打印
[应用相关]

C语言循环语句的使用

[复制链接]
478|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
szt1993|  楼主 | 2024-1-28 23:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

MCU 的开发过程中,我们绝大部分情况下还是在使用前后台系统,当然即便我们跑了一些实时性的操作系统,也避免不了使用一些无限循环的处理。

那么处理无限循环的语句目前有两种写法,我常看到一些初级工程师会使用 while(1),而在一些操作系统源码中看到的更多的是 for(;;)。

如果在 C99 的版本下,我们使用 for 来写循环看起来更紧凑。

// while 循环的初始化
int i = 0;
while (i < 5) {
    // ...
    i++;
}

// for 循环的初始化
for (int i = 0; i < 5; i++) {
    // ...
}


另外,我十几年前在赛普拉斯的单片机上开发,因为 flash 空间很小,需要极致优化代码来进行空间压缩,这里我选择了 for 循环的写法可以让空间多出一个字节来,不过现在的很多编译器都已经更新了很多年了,至少在主流的 arm 平台上他们的汇编代码都是一样的了。

使用特权

评论回复
沙发
fionababy| | 2024-1-29 08:45 | 只看该作者
细节细节

使用特权

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

本版积分规则

327

主题

2533

帖子

6

粉丝