for(;;)和 while(1) 有什么区别吗?for()和while()的使用情景。
1?for(;;)和 while(1) 有什么區(qū)別嗎?
void main(void) {int a = 2 ;// for(;;)while(1){a++;} } arm-linux-gcc -c -o for.o for.c; arm-linux-ld -o for_elf for.o; arm-linux-objcopy -O binary -S for_elf for.bin; arm-linux-objdump -D -m arm for_elf > for.dis; cat for.dis?
00008460 <main>: //for(;;);
8460: e1a0c00d mov ip, sp
8464: e92dd800 stmdb sp!, {fp, ip, lr, pc}
8468: e24cb004 sub fp, ip, #4 ; 0x4
846c: eafffffe b 846c <main+0xc>
00008074 <main>://while(1);
8074: e1a0c00d mov ip, sp
8078: e92dd800 stmdb sp!, {fp, ip, lr, pc}
807c: e24cb004 sub fp, ip, #4 ; 0x4
8080: eafffffe b
沒發(fā)現(xiàn)區(qū)別所在。
00008074 <main>://while(1){a++}
8074: e1a0c00d mov ip, sp
8078: e92dd800 stmdb sp!, {fp, ip, lr, pc}
807c: e24cb004 sub fp, ip, #4 ; 0x4
8080: e24dd004 sub sp, sp, #4 ; 0x4
8084: e3a03002 mov r3, #2 ; 0x2
8088: e50b3010 str r3, [fp, #-16]
808c: e51b3010 ldr r3, [fp, #-16]
8090: e2833001 add r3, r3, #1 ; 0x1
8094: e50b3010 str r3, [fp, #-16]
8098: eafffffb b 808c <main+0x18>
00008074 <main>://for(;;){a++}
8074: e1a0c00d mov ip, sp
8078: e92dd800 stmdb sp!, {fp, ip, lr, pc}
807c: e24cb004 sub fp, ip, #4 ; 0x4
8080: e24dd004 sub sp, sp, #4 ; 0x4
8084: e3a03002 mov r3, #2 ; 0x2
8088: e50b3010 str r3, [fp, #-16]
808c: e51b3010 ldr r3, [fp, #-16]
8090: e2833001 add r3, r3, #1 ; 0x1
8094: e50b3010 str r3, [fp, #-16]
8098: eafffffb b 808c <main+0x18>
?
?
2 為什么用for(;;)或者while(1)
詳細(xì)閱讀http://bbs.csdn.net/topics/80195701中下面一段話后面的內(nèi)容:
《代碼大全》里面說:
????在C?中,只要允許就用for?循環(huán):?C?的for?循環(huán)是這種語言強(qiáng)有力的結(jié)構(gòu)之一。它不僅靈
活性強(qiáng),而且把循環(huán)控制代碼封裝在一起,增加了其可讀性。程序員在修改軟件時(shí)易犯的錯(cuò)誤
是;修改了循環(huán)前面的初始化循環(huán)的代碼,但卻忘了修改其后面的有關(guān)代碼。在C?的for?循環(huán)
中,所有相關(guān)代碼集中在循環(huán)的頂部,修改起來很容易。如果在C?中能用for?循環(huán)替代別的類
型的循環(huán),盡量這樣做。
但當(dāng)while?循環(huán)更合適時(shí),別用for?循環(huán)。
?
轉(zhuǎn)載于:https://www.cnblogs.com/mylinux/p/3978591.html
總結(jié)
以上是生活随笔為你收集整理的for(;;)和 while(1) 有什么区别吗?for()和while()的使用情景。的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 精读《javascript高级程序设计》
- 下一篇: userscript.user.js 文