OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4634|回复: 3

USMART实验 统指令 for(i=0;i<sizeof(sys_cmd_tab)/4;i++) 为什么要除以4

[复制链接]

1

主题

1

帖子

0

精华

初级会员

Rank: 2

积分
124
金钱
124
注册时间
2019-4-28
在线时间
9 小时
发表于 2020-4-2 15:30:16 | 显示全部楼层 |阅读模式
1金钱

for(i=0;i<sizeof(sys_cmd_tab)/4;i++)  //支持的系统指令

这里 sys_cmd_tab/4 为什么要除以4


1212.png

最佳答案

查看完整内容[请看2#楼]

因为32位系统一个指针是4个字节, 为了得到tab里面指令个数,必须除以4.
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2020-4-2 15:30:17 | 显示全部楼层
因为32位系统一个指针是4个字节, 为了得到tab里面指令个数,必须除以4.
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2020-6-11
在线时间
16 小时
发表于 2020-7-25 13:51:27 | 显示全部楼层
可以理解为,sizeof(sys_cmd_tab) / sizeof(u8 *)
数组总大小除以单个数组元素类型大小,得到数组元素个数
回复

使用道具 举报

18

主题

155

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3919
金钱
3919
注册时间
2016-7-8
在线时间
821 小时
发表于 2020-12-18 10:01:23 | 显示全部楼层
学习了,这个问题也困惑着我
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-14 18:59

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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