X
首页
技术
模拟电子
单片机
半导体
电源管理
嵌入式
传感器
最能打国产芯
应用
汽车电子
工业控制
家用电子
手机便携
安防电子
医疗电子
网络通信
测试测量
物联网
最能打国产芯
大学堂
首页
直播
专题
TI 培训
论坛
汽车电子
国产芯片
电机驱动控制
电源技术
单片机
模拟电子
PCB设计
电子竞赛
DIY/开源
嵌入式系统
医疗电子
颁奖专区
【厂商专区】
【电子技术】
【创意与实践】
【行业应用】
【休息一下】
最能打国产芯
活动中心
直播
发现活动
颁奖区
电子头条
参考设计
下载中心
分类资源
文集
排行榜
电路图
Datasheet
最能打国产芯
51单片机
[求助] 请问函数指针不定参改如何使用【已解决】
xingyu1156
2017-6-5 13:25
楼主
作死使用函数指针不定参,结果编译失败
,求助诸位大佬。
函数指针指向函数原型是void cb(u16 val);
void ADCAdd(u8 chanBit, ...)
{
va_list argp; //定义保存函数参数的结构
u8 channel = 0;
va_start(argp, level); chanBit &= ~(~((u8)0) << 8); //清不存在通道的无效位 if (chanBit) { // AD IO配置 ADCH |= LOBYTE(chanBit); //通道选择 Adc.ChannelS |= chanBit; //载入通道 do { do { chanBit >>= 1; channel++; } while (chanBit); //载入采样值处理函数
AdcCallback[channel - 1] = va_arg(argp, (void (*))(u16));
} while (chanBit); } va_end(argp);
}
本帖最后由 xingyu1156 于 2017-6-6 17:25 编辑
点赞
回复评论 (2)
2推荐
lcofjp
函数指针的类型确实很复杂,一般人记不住,我也一样,所以一般都用函数指针的简化类型,即用typedef对类型进行简化。
typedef void (*XXCALLBACK)(u16 val);
这个XXCALLBACK就是这个回调函数的类型了,
然后再试试这种写法:
va_arg(argp, XXCALLBACK);
看看能不能解决问题。
点赞
2017-6-5 14:01
板凳
xingyu1156
引用:
lcofjp 发表于 2017-6-5 14:01
函数指针的类型确实很复杂,一般人记不住,我也一样,所以一般都用函数指针的简化类型,即用typedef对类型 ...
这个可以有
编译可以通过
点赞
2017-6-5 14:27
最新活动
报名直播赢【双肩包、京东卡、水杯】| 高可靠性IGBT的新选择——安世半导体650V IGBT
30套RV1106 Linux开发板(带摄像头),邀您动手挑战边缘AI~
安世半导体理想二极管与负载开关,保障物联网应用的稳健高效运行
免费申请 | 上百份MPS MIE模块,免费试用还有礼!
PI 电源小课堂|无 DC-DC 变换实现多路高精度输出反激电源
2024 瑞萨电子MCU/MPU工业技术研讨会——深圳、上海站, 火热报名中
随便看看
STM8关于LIN总线从节点接收不到报文头的问题
LabVIEW一个问题觉得奇怪
逆变电源的设计
单片机能驱动马达吗?
syn6288模块
cc2530 OTA 远程固件升级问题
MSP430一条语句不太理解!
性价比较高的28335开发板现在有出的吗?
大湿,有劳了
今天参加了 TI Hercules 和 M4 的研讨会
PB5.0添加T9IME输入法编译问题
来看看S3C6410在1024x768分辨率下的显示效果(立宇泰ARMSYS6410开发板)
lpc1500体验+恩智浦LPC1549@eeworld ( 十)ADC
用LM393做的灰度传感器无法输出高电平
求救,哪位高手用过iwlist
[视频-中文字幕]BlueNRG-Mesh启动配置和数据库交换
GNU Binutils工具集与GCC的关系
CCS如何出现ON—chip flash config...窗口
想要个dsp音频调音的软件有可以开发的工程可以看下
evc下如何通过链接打开保存的音频文件?
电子工程世界版权所有
京B2-20211791
京ICP备10001474号-1
京公网安备 11010802033920号
回复
写回复
收藏
回复