打印
[ARM入门]

void *p_arg和(void)p_arg是一个什么东西,看不明白

[复制链接]
4035|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sushaowen|  楼主 | 2016-3-9 17:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
LED, os, hm, hms, ST
想问一下,下面程序中void *p_arg和(void)p_arg是一个什么样的东西
* 函数名:Task_LED
* 描述  : LED流水灯        
* 输入  :无
* 输出  : 无
*/
void Task_LED(void *p_arg)
{
        OS_ERR err;
    (void)p_arg;                                // 'p_arg' 并没有用到,防止编译器提示警告
        
    while (1)
    {
        LED1( ON );
        OSTimeDlyHMSM(0, 0,1,0,OS_OPT_TIME_HMSM_STRICT,&err);
        LED1( OFF);

        LED2( ON );
        OSTimeDlyHMSM(0, 0,1,0,OS_OPT_TIME_HMSM_STRICT,&err);
        LED2( OFF);

        LED3( ON );
        OSTimeDlyHMSM(0, 0,1,0,OS_OPT_TIME_HMSM_STRICT,&err);
        LED3( OFF);
    }
}

void *p_arg是无类型指针?也就是任意类型指针吗?
那(void)p_arg;   又是什么意思?
在很多程序中看到这句p_arg=p_arg;
这句对自己赋值有什么意义?

相关帖子

沙发
houyue——| | 2016-3-22 17:26 | 只看该作者
void *p_arg 是空类型指针,可以理解为类型比较广,其他类型的指针都可以传给它,(void)p_arg告诉编译器,我知道没用到这个指针,别给我警告。个人己见,请参考。

使用特权

评论回复
板凳
st_electronic| | 2017-12-15 14:03 | 只看该作者
houyue—— 发表于 2016-3-22 17:26
void *p_arg 是空类型指针,可以理解为类型比较广,其他类型的指针都可以传给它,(void)p_arg告诉编译器 ...

明白人。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

28

帖子

1

粉丝