「無限ループ」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
− | '''無限ループ''' | + | '''無限ループ'''(読み:むげんループ、英語: infinite loop)とは、[[無限]]に繰り返される[[ループ]]のことである。 |
− | + | また、英語読みの「インフィニット・ループ (地名)」はアメリカ合衆国カリフォルニア州クパティーノに存在する環状道路由来の地名であり、その中にはアップル本社のビル群が建っている。 | |
==例== | ==例== | ||
− | === | + | ===[[C言語]]=== |
− | + | <pre>for(;;)処理;</pre> | |
− | + | * 2013年時点でもっとも推奨されている記述方法である。 | |
− | < | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | <pre>while(1)処理;</pre> | |
− | [[ | + | * この記法は馬鹿なコンパイラではループの度に判定処理が入るという欠点がある。 |
− | < | + | * [[Visual C++]]ではC4127警告<ref>http://msdn.microsoft.com/ja-jp/library/6t66728h.aspx</ref>が発令され怒られる。[[マイクロソフト]]社内でこの記法を用いると[[リストラ]]対象となるかは定かではない。 |
− | int i,j; | + | |
+ | |||
+ | <pre>int i,j; | ||
for(i=0;i<10;i++) { | for(i=0;i<10;i++) { | ||
for(j=0;j<10;i++)処理; | for(j=0;j<10;i++)処理; | ||
− | } | + | }</pre> |
− | </ | + | * [[不具合]]、いわゆる[[バグ]]である。 |
+ | |||
− | + | <pre>int i,j; | |
− | |||
− | < | ||
− | int i,j; | ||
for(i=0;i<100;i++) { | for(i=0;i<100;i++) { | ||
for(i=0;i<10;i++)処理; | for(i=0;i<10;i++)処理; | ||
− | } | + | }</pre> |
− | </ | + | |
− | + | <pre>int i; | |
− | + | for(i=0;i<=INT_MAX;i++)処理;</pre> | |
− | < | ||
− | int i; | ||
− | for(i=0;i<=INT_MAX;i++)処理; | ||
− | </ | ||
− | === | + | ===[[Active Basic]]=== |
− | [[Active Basic]] | ||
<pre>Do | <pre>Do | ||
処理 | 処理 | ||
Loop</pre> | Loop</pre> | ||
− | === | + | ===[[HSP]]=== |
− | [[HSP]] | ||
<pre>repeat | <pre>repeat | ||
処理 | 処理 | ||
loop</pre> | loop</pre> | ||
− | === | + | ===x86[[アセンブラ]]=== |
− | |||
<pre>thelabel: | <pre>thelabel: | ||
jmp thelabel</pre> | jmp thelabel</pre> | ||
== 関連項目 == | == 関連項目 == | ||
− | |||
== 参考文献 == | == 参考文献 == | ||
{{reflist}} | {{reflist}} |