完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
4个回答
|
|
返回数组 返回数组
|
|
|
|
return只能返回1个值。可以用返回指针的方式返回多个值。
这里有一个C语言例程,你研究研究,或许对你有用 #include int *max(int x[],int y[],int *p,int *c) { int i; int *m=&x[0]; for(i=0;i<10;i++) { if(*m *m=x[i]; *p=i; *c=1; } } for(i=0;i<10;i++) { if(*m *m=y[i]; *p=i; *c=2; } } return m; } void main() { int c1[10]={1,2,3,4,5,6,7,8,9,0}; int c2[10]={11,12,13,14,15,16,17,18,19,10}; int n,c,*p; p=max(c1,c2,&n,&c); printf("两个数组中最大的元素是%d,在c%d中的位置是%dn",*p,c,n); } |
|
|
|
#include "PID.h"
float PIDCalc( PID *pp, float NextPoint ) { float dError, Error; Error = pp->SetPoint - NextPoint; // 偏差 pp->SumError += Error; // 积分 dError = pp->LastError - pp->PrevError; // 当前微分 pp->PrevError = pp->LastError; pp->LastError = Error; if(pp->SumError>600) pp->SumError=600; //偏差单位 (根据实际情况进行设置调节) else if(pp->SumError<-600) pp->SumError=-600; return (pp->Proportion * Error // 比例项 + pp->Integral * pp->SumError // 积分项 + pp->Derivative * dError // 微分项 ); } //****PID 调压函数********// float Vol(int vSet,int v3){ float vOut; // PID Response (Output) float vIn; // PID Feedback (Input) vPID.SetPoint = vSet; // Set PID Setpoint vIn = (float)v3; // Read Input vOut = PIDCalc ( &vPID,vIn ); // Perform PID Interation return vOut; }这个东西的偏差单位怎么确定的 |
|
|
|
坐等答案!!!!!!!!!!!!!!
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
690 浏览 0 评论
735 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
624 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
1099 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
1092 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11797 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 19:40 , Processed in 0.552307 second(s), Total 44, Slave 38 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号