【我解C语言面试题系列】003 死循环格式问题小结?

本文总结了操作系统、WIN32程序、嵌入式系统及多线程中的死循环现象,并探讨了在C语言中如何恰当使用无条件循环。强调在代码格式和可读性上的统一,以减少维护成本。同时指出在嵌入式编程中应谨慎使用死循环,以防止程序当机导致测试失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【我解C语言面试题系列】003 死循环格式问题小结

死循环格式问题小结

下面是几个"著名"的死循环:

1)操作系统死循环;

2WIN32程序死循环;

3)嵌入式系统软件死循环;

4)多线程程序的线程处理函数死循环。

 

而有的时候我们在程序中也要使用死循环,只有当条件满足的时候,才可以break 退出死循环,继续下面的代码的执行。死循环的方案有两个:

while (1)

{

       ……

}

for ( ; ; )

{

       ……

}

第一种格式往往是我们的首选方案。

第二种格式则由于这个语法没有确切表达代码的含义,我们从for ( ; ; ) 看不出什么,只有弄明白for ( ; ; ) C语言中意味着无条件循环才明白其意。有的程序员更是把第二种格式写成了 for ( ;1 ; ) ,更是迷惑人。我们不要求所有人的所有代码格式都统一,但是象这种情况,还是统一一点的比较好,因为这样读你代码的人会更舒服一些,可以增强程序员间的代码交流。死揪语法,狠钻牛角尖,代码写的乱七八糟,各有各的一套,那对于代码维护来说是要付出很大代价的。

C程序中,特别是嵌入式程序中除主程序的死循环外,一般的人都建议不要使用死循环,因为一旦你的代码稍微出现小的失误,就会造成当机,这是做嵌入式的人最不愿意看到的,因为QA(质量测试部门)是绝对不允许这种程序通过测试走货的。但是,在有的时候我们又不可避免的要使用死循环,所以要视具体情况而定。



 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值