「無限ループ」の版間の差分
ナビゲーションに移動
検索に移動
(適当に作成) |
(→C言語) |
||
4行目: | 4行目: | ||
===[[C言語]]=== | ===[[C言語]]=== | ||
<pre>for(;;)処理;</pre> | <pre>for(;;)処理;</pre> | ||
+ | |||
<pre>while(1)処理;</pre> | <pre>while(1)処理;</pre> | ||
+ | * この記法は馬鹿なコンパイラではループの度に判定処理が入るという欠点がある。 | ||
+ | * [[Visual C++]]ではC4127警告<ref>http://msdn.microsoft.com/ja-jp/library/6t66728h.aspx</ref>が発令され怒られる。[[マイクロソフト]]社内でこの記法を用いると[[リストラ]]対象となる。 | ||
+ | |||
<pre>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> | ||
+ | |||
<pre>int i,j; | <pre>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> | ||
+ | |||
<pre>int i; | <pre>int i; | ||
for(i=0;i<=INT_MAX;i++)処理;</pre> | for(i=0;i<=INT_MAX;i++)処理;</pre> | ||
+ | |||
===[[Active Basic]]=== | ===[[Active Basic]]=== | ||
<pre>Do | <pre>Do |
2013年8月20日 (火) 02:00時点における版
例
C言語
for(;;)処理;
while(1)処理;
- この記法は馬鹿なコンパイラではループの度に判定処理が入るという欠点がある。
- Visual C++ではC4127警告[1]が発令され怒られる。マイクロソフト社内でこの記法を用いるとリストラ対象となる。
int i,j; for(i=0;i<10;i++) { for(j=0;j<10;i++)処理; }
int i,j; for(i=0;i<100;i++) { for(i=0;i<10;i++)処理; }
int i; for(i=0;i<=INT_MAX;i++)処理;
Active Basic
Do 処理 Loop
HSP
repeat 処理 loop
x86アセンブラ
thelabel: jmp thelabel