「無限ループ」の版間の差分
imported>MikeCAT 細 C言語のコードをsourceタグを使った記述に変更 |
|||
| 5行目: | 5行目: | ||
==例== | ==例== | ||
===[[C言語]]=== | ===[[C言語]]=== | ||
< | <source lang="c">for(;;)処理;</source> | ||
* 2013年時点でもっとも推奨されている記述方法である。 | * 2013年時点でもっとも推奨されている記述方法である。 | ||
< | <source lang="c">while(1)処理;</source> | ||
* この記法は馬鹿なコンパイラではループの度に無駄な判定処理が入るという欠点がある。 | * この記法は馬鹿なコンパイラではループの度に無駄な判定処理が入るという欠点がある。 | ||
* [[Visual C++]]ではC4127警告<ref>http://msdn.microsoft.com/ja-jp/library/6t66728h.aspx</ref>が発令され怒られる。[[マイクロソフト]]社内でこの記法を用いると[[リストラ]]対象となるかは定かではない。 | * [[Visual C++]]ではC4127警告<ref>http://msdn.microsoft.com/ja-jp/library/6t66728h.aspx</ref>が発令され怒られる。[[マイクロソフト]]社内でこの記法を用いると[[リストラ]]対象となるかは定かではない。 | ||
< | <source lang="c"> | ||
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++)処理; | ||
}</ | } | ||
</source> | |||
* [[不具合]]、いわゆる[[バグ]]である。 | * [[不具合]]、いわゆる[[バグ]]である。 | ||
< | <source lang="c"> | ||
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++)処理; | ||
}</ | } | ||
</source> | |||
< | <source lang="c"> | ||
for(i=0;i<=INT_MAX;i++)処理;</ | int i; | ||
for(i=0;i<=INT_MAX;i++)処理; | |||
</source> | |||
===[[Active Basic]]=== | ===[[Active Basic]]=== | ||