您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么使用C語(yǔ)言的for命令”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“怎么使用C語(yǔ)言的for命令”吧!
C語(yǔ)言的for命令有一個(gè)用來(lái)指明變量的特定方法,一個(gè)必須保持成立才能繼續(xù)迭代的條件, 以及另一個(gè)在每個(gè)迭代中改變變量的方法。當(dāng)指定的條件不成立時(shí),for循環(huán)就會(huì)停止。條件等式通過(guò)標(biāo)準(zhǔn)的數(shù)學(xué)符號(hào)定義。比如,考慮下面的C語(yǔ)言代碼:
for (i = 0; i < 10; i++) { printf("The next number is %dn", i); }
這段代碼產(chǎn)生了一個(gè)簡(jiǎn)單的迭代循環(huán),其中變量i作為計(jì)數(shù)器。第一部分將一個(gè)默認(rèn)值賦給該變量。中間的部分定義了循環(huán)重復(fù)的條件。當(dāng)定義的條件不成立時(shí),for循環(huán)就停止迭代。 后一部分定義了迭代的過(guò)程。在每次迭代之后,后一部分中定義的表達(dá)式會(huì)被執(zhí)行。在本例中,i變量會(huì)在每次迭代后增一。
bash shell也支持一種for循環(huán),它看起來(lái)跟C語(yǔ)言風(fēng)格的for循環(huán)類似,但有一些細(xì)微的不同,其中包括一些讓shell腳本程序員困惑的東西。以下是bash中C語(yǔ)言風(fēng)格的for循環(huán)的基本格式。
for (( variable assignment ; condition ; iteration process ))
C語(yǔ)言風(fēng)格的for循環(huán)的格式會(huì)讓bash shell腳本程序員摸不著頭腦,因?yàn)樗褂昧薈語(yǔ)言風(fēng)格的變量引用方式而不是shell風(fēng)格的變量引用方式。C語(yǔ)言風(fēng)格的for命令看起來(lái)如下:
for (( a = 1; a < 10; a++ ))
注意,有些部分并沒(méi)有遵循bash shell標(biāo)準(zhǔn)的for命令:
1、變量賦值可以有空格;
2、條件中的變量不以美元符開(kāi)頭;
3、迭代過(guò)程的算式未用expr命令格式。
shell開(kāi)發(fā)人員創(chuàng)建了這種格式以更貼切地模仿C語(yǔ)言風(fēng)格的for命令。這雖然對(duì)C語(yǔ)言程序員來(lái)說(shuō)很好,但也會(huì)把專家級(jí)的shell程序員弄得一頭霧水。在腳本中使用C語(yǔ)言風(fēng)格的for循環(huán)時(shí)要小心。
以下是在bash shell程序中使用C語(yǔ)言風(fēng)格的for命令的一個(gè)例子,大家認(rèn)真看一下:
$ cat test8 #!/bin/bash # testing the C-style for loop for (( i=1; i <= 10; i++ )) do echo "The next number is $i" done $ ./test8 The next number is 1 The next number is 2 The next number is 3 The next number is 4 The next number is 5 The next number is 6 The next number is 7 The next number is 8 The next number is 9 The next number is 10 $
for循環(huán)通過(guò)定義好的變量(本例中是變量i)來(lái)迭代執(zhí)行這些命令。在每次迭代中,$i變量包含了for循環(huán)中賦予的值。在每次迭代后,循環(huán)的迭代過(guò)程會(huì)作用在變量上,在本例中,變量增一。
感謝各位的閱讀,以上就是“怎么使用C語(yǔ)言的for命令”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)怎么使用C語(yǔ)言的for命令這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。