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

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

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:497
  • 最近打卡:2025-04-30 20:48:13
已绑定手机

151

主题

589

回帖

1196

积分

金牌会员

积分
1196
发表于 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;
}

回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:432
  • 最近打卡:2025-05-01 16:19:56

5

主题

1127

回帖

4263

积分

荣誉版主

积分
4263
发表于 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

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:497
  • 最近打卡:2025-04-30 20:48:13
已绑定手机

151

主题

589

回帖

1196

积分

金牌会员

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

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

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 06:39 , Processed in 0.111065 second(s), 61 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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