找回密码
 立即注册
查看: 188|回复: 2

跑系统时,任务中*( long*)p_arg怎么理解?代码如下:

[复制链接]
  • TA的每日心情
    奋斗
    半小时前
  • 签到天数: 168 天

    [LV.7]常住居民III

    116

    主题

    473

    回帖

    968

    积分

    高级会员

    积分
    968
    发表于 2024-2-10 16:54:51 | 显示全部楼层 |阅读模式
    跑系统时,任务中*( long*)p_arg怎么理解?代码如下:

    void Task_A(void *p_arg) reentrant //reentrant声明的函数为可重入函数
    {
    //    long  v;
    //    v = *( long*)p_arg;
    //    printf("p_arg=%ld\n",v);
        p_arg = p_arg;
    }

    回复 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 13:14
  • 签到天数: 172 天

    [LV.7]常住居民III

    5

    主题

    572

    回帖

    2327

    积分

    荣誉版主

    积分
    2327
    发表于 2024-2-10 19:08:35 | 显示全部楼层
    本帖最后由 CosyOS 于 2024-2-10 19:16 编辑

    p_arg 为任务形参,用于创建任务时传递给任务一个初始参数,类型为 void *(void类型指针)。
    *(long *)p_arg,意为 先把 p_arg 强制转换为 long *(long类型指针),再访问数据(数据类型为 long)。

    指针为C语言进阶的突破口,应加强学习和应用,并在应用中逐渐掌握。
    回复 支持 1 反对 0 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    半小时前
  • 签到天数: 168 天

    [LV.7]常住居民III

    116

    主题

    473

    回帖

    968

    积分

    高级会员

    积分
    968
     楼主| 发表于 2024-2-10 20:11:20 | 显示全部楼层
    CosyOS 发表于 2024-2-10 19:08
    p_arg 为任务形参,用于创建任务时传递给任务一个初始参数,类型为 void *(void类型指针)。
    *(long *)p_a ...

    感谢老师的谆谆教导,我会努力,
    回复 支持 反对 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-17 09:12 , Processed in 0.080073 second(s), 36 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表