while(1)をfor(;;)って書くやつ

このエントリーをはてなブックマークに追加
1仕様書無しさん
かわいいよな
2仕様書無しさん:2007/04/27(金) 18:17:55
な、なによ!
3仕様書無しさん:2007/04/27(金) 18:45:33
判定が空式でfalseなのでループは1回も実行されないのでは?
4仕様書無しさん:2007/04/27(金) 18:47:38
>>1-2
ワロタ
5仕様書無しさん:2007/04/27(金) 19:55:25
>>3お前果てしないな
死んだほうがいいよ
6仕様書無しさん:2007/04/27(金) 20:40:55
>>3
;; は not equal null を表現します
7仕様書無しさん:2007/04/27(金) 22:06:04
どっちがいいんかね
8仕様書無しさん:2007/04/27(金) 22:18:41
for(;;)の方が好き。
あとで無限止めたいときも楽だし。
9仕様書無しさん:2007/04/27(金) 22:38:01
forの方がスーパーセットなわけですよ。
10仕様書無しさん:2007/04/27(金) 22:43:43
スーパー・・・セッ・・・ト ?
11仕様書無しさん:2007/04/27(金) 23:14:31
1000回まわったら抜けるとか保険入れる奴はヘタレ
12仕様書無しさん:2007/04/27(金) 23:20:22
昔は、while だったが、
今は警告でないように、for 使うよ。
13仕様書無しさん:2007/04/27(金) 23:24:37
へ〜、今警告出るんだ?
感覚的に言って、forは回数制限ループ用なんで、ちょっと気持悪いかな。
while(TRUE)とかなら、無限ループ宣言って感じがしていいけど。
なんでアラート出るの?
無限ループみたいだから?
それならforでも出ないとおかしいと思うけど。
14仕様書無しさん:2007/04/27(金) 23:36:30
vc++ で警告を最大にした場合のみだけどね。(gccではでない)
理由は、条件式 が定数だから。
15仕様書無しさん:2007/04/27(金) 23:50:47
ていうか、そんなの使う場面に出会ったことが無いです。
ポーリングしてんの?
16仕様書無しさん:2007/04/28(土) 00:01:04
グーグルコードサーチ
 
while (1) 約5,080,000件
for (;;) 約817,000件

while の圧勝

17仕様書無しさん:2007/04/28(土) 00:19:01
for(;;)は一部のプロフェッショナルしか使ってないからなぁ
18仕様書無しさん:2007/04/28(土) 00:20:39
>>17
COBOLみたいですねw
19仕様書無しさん:2007/04/28(土) 00:23:42
>>14
へぇ。forの条件式は「空」だから定数じゃないって扱い?
まあ、ミスの起こりやすさに応じて設定されているんだろうね。

>>15
終了条件が複数ある場合とかじゃないかな。
20仕様書無しさん:2007/04/28(土) 00:28:31
>>19
for(;;)は
初期化:何もしない
継続条件:何も判定しない
再初期化: 何もしない
だから、定数かどうかとは根本的に違うよね。

というか、なんというか
無限ループは甘え
21仕様書無しさん:2007/04/28(土) 00:30:13
for (;;) で回して switch () で分別して break; とかよくやります。。。
22仕様書無しさん:2007/04/28(土) 00:30:37
>無限ループは甘え
なんで?
23仕様書無しさん:2007/04/28(土) 00:38:46
>>21
Cだと、switchの中でbreak;しても、switch抜けるだけだと思うけど。
何の言語?
24仕様書無しさん:2007/04/28(土) 00:40:32
組み込みのメインループの先頭には必ず存在するものだが?
25仕様書無しさん:2007/04/28(土) 00:41:42
>>24
>>21の事?
だとしたら>>23に対して説明頼む。
26仕様書無しさん:2007/04/28(土) 00:42:51
あ、すまん。
無限ループの事ね。
俺も組み込み(というかレジ)の初期化ルーチンの時に見たことあるわ。
>>20の言っていることはわからんね。
27仕様書無しさん:2007/04/28(土) 00:52:06
しまった!
まぁ、if () をズラッと並べてるんですけどね。。。
28仕様書無しさん:2007/04/28(土) 00:53:08
>>27
だよね。
ならわかる。
レジで見たから。
29仕様書無しさん:2007/04/28(土) 01:00:04
while(for(;;))は?
あ、ダメだ。for(;while(1);)は?
30仕様書無しさん:2007/04/28(土) 01:02:59
無限ループが甘えと言ってるやつの意味が分からん。
アホか?死ねよ。
31仕様書無しさん:2007/04/28(土) 01:04:21
>>29
くだらなすぎて考えたくもないが、ループを一回実行してからフリーズじゃないか?
32仕様書無しさん:2007/04/28(土) 01:11:24
>>30
まてまて、無限ループを全否定してるわけじゃないんだ。
そんな真剣に否定しないでおくれよ。

確かに構造化は崩れちゃうし事故の素だけど、
けどそれを忍んでbreak使って制御なんて俺だってよくやるし、
半永久的に待ちなプログラムには必須だと思うよ。

つーかネタだから笑い飛ばしてくれればよかったのに。
ごめんなさい。
33仕様書無しさん:2007/04/28(土) 01:26:15
意味分からん。
ネタとしてもどこが面白いのか分からん。
分かってないのに格好いいこと言おうとして
詳しい奴にマジレスで突っ込まれて、
たじたじして
お茶を濁して逃げたようにしか見えん。
しかも言い訳が美しくない。

「よく分かってなかったのに格好つけちゃいました(笑」
とでも言えばかわいげもあるのに。
34仕様書無しさん:2007/04/28(土) 02:09:19
一味違うプログラマになるなら

while(2)
35仕様書無しさん:2007/04/28(土) 02:12:44
>>33
これだからマジレスは困る。
のに俺からまたマジレス。

下手に出てりゃいい気になりやがって...

詳しいヤツにマジレスで...ってどの辺りがだよ。
>>24か?そんなもん常識だろ。
組み込みなんて学生の頃センサ系制御ちょっとやったかな?
くらいの全然詳しくない俺でも知ってる程。

と顔真っ赤にして書き込む俺であった。
36仕様書無しさん:2007/04/28(土) 02:25:27
for (;!8 ^0^ 8;)
37仕様書無しさん:2007/04/28(土) 02:32:58
>>34
そうそう。
そのノリだよ!

>>35
もういいよ。

>>36
1回だけ実行して終了?
38仕様書無しさん:2007/04/28(土) 02:40:42
自前メッセージループ書かせられる羽目になった時点で終ってるかと。
39仕様書無しさん:2007/04/28(土) 02:47:35
エリート登場w
40仕様書無しさん:2007/04/28(土) 02:56:10
while ("無限ループ")
41仕様書無しさん:2007/04/28(土) 02:56:54
while(1);
{
}
42仕様書無しさん:2007/04/28(土) 02:57:58
>>40
深いな・・・
どんな文字列が真で偽なんだろうな
43仕様書無しさん:2007/04/28(土) 07:33:34
>>35
この板で正論は時に諦めも必要
全部分かっててつまらんボケかましてんだよ33は
44仕様書無しさん:2007/04/28(土) 07:46:07
>38
WinSDK…
45仕様書無しさん:2007/04/28(土) 10:29:54
do {

}while(1);
46仕様書無しさん:2007/04/28(土) 11:32:27
do {

}for(;;);
47仕様書無しさん:2007/04/28(土) 12:17:51
while(1){
return;
}
48仕様書無しさん:2007/04/28(土) 14:31:10
while(65536);
49仕様書無しさん:2007/04/28(土) 15:21:15
>>42
式中では先頭ポインタ値として評価されるから、NULL以外なら真にしかならないよ。
50仕様書無しさん:2007/04/28(土) 20:06:40
for(;;)ってなんか気持ち悪いよね。コード的に美しくないよこれ。
51仕様書無しさん:2007/04/28(土) 20:41:31
誰もK&Rで使われているのがfor(;;)だって言わないんだな。
52仕様書無しさん:2007/04/28(土) 21:20:22
#define EVER /* */

for(EVER;;){

}
53仕様書無しさん:2007/04/28(土) 21:58:32
>>50
for( ; ; )
銃を右こめかみに当てて泣いてる人のようにも見える。
間違いなくこれはプログラマの未来を暗示。
54仕様書無しさん:2007/04/28(土) 22:20:39
どっち使ってるかでレベル(経験)がわかるな
55仕様書無しさん:2007/04/28(土) 22:28:44
さすがにgoto使ってる奴はいないね。
56仕様書無しさん:2007/04/28(土) 23:38:51
Suisui解任動議 今現在
解任賛成 : 27 (42.2%)
解任反対 : 37 (57.8%)
票差 : 10
合計: 64


賛成票が増えて42%になりました。
もし反対票がなければ、あと11票(8%超)の賛成票が集まればsuisuiは解任になります。

投票期限まで
あと 4 日
投票期日 : 2007年5月2日 (水) 00:02 (UTC) まで
(注意! : 日本時間では2007年5月2日 (水) 09:02 までが投票期日となります!)


彼を解任させたいかさせたくないかを考えるまであと4日あります。
議論まとめページを良く読んでじっくり考えましょう。

なお、この解任は、彼をメタウィキのスチュワードという
役職から解任させるものではありません。
日本ウィキペディアでの管理者という役職を解任させる是非を問うものです。
2chでのデマに惑わされないよう要注意して下さい。
57仕様書無しさん:2007/04/29(日) 02:57:08
Suisuiって誰だ?
58仕様書無しさん:2007/04/29(日) 11:24:12
無限ループするようなコードを書いてる時点で終わってるだろ
発想が貧困
59仕様書無しさん:2007/04/29(日) 11:31:57
>>57
今泉誠という眼鏡を掛けた30代の人です。IPユーザ広域ブロックで批判されています
60仕様書無しさん:2007/04/29(日) 11:32:39
■Suisui(今泉 誠)解任動議 今現在
http://ja.wikipedia.org/wiki/Wikipedia:%E7%AE%A1%E7%90%86%E8%80%85%E3%81%AE%E8%A7%A3%E4%BB%BB/Suisui_20070421#.E8.A7.A3.E4.BB.BB.E3.81.AB.E8.B3.9B.E6.88.90_.28Demand_the_resignation_of_the_sysop.29
解任賛成 : 28 (41.8%)
解任反対 : 39 (58.2%)
票差 : 11 /  合計: 67


賛成票が1増え反対票が2増えて41%になりました。
もし反対票がなければ、あと12票(9%超)の賛成票が集まればSuisuiは解任になります。

■投票期限まで あと 3 日
投票期日 : 2007年5月2日 (水) 00:02 (UTC) まで
(注意! : 日本時間では2007年5月2日 (水) 09:02 までが投票期日となります!)

広域ブロック、対話拒否で批判されている彼を解任させたいかさせたくないかを考えるまであと4日あります。
議論まとめページを良く読んでじっくり考えましょう。

■以下の条件を満たさなければ投票することはできませんので注意して下さい。
* 初めて編集した時から動議提出時までに1ヶ月以上を経過していること。
* その間、標準名前空間を50回以上編集し、
* 動議提出時から遡って直近1ヶ月の標準名前空間編集回数が5回以上あること。
■なお、この解任は、彼をメタウィキのスチュワードという
役職から解任させるものではありません。
日本ウィキペディアでの管理者という役職を解任させる是非を問うものです。
2chでのデマに惑わされないよう要注意して下さい。
■関連スレ 【百科事典】ウィキペディア第385刷【Wikipedia】
http://hobby9.2ch.net/test/read.cgi/hobby/1177767325/
61仕様書無しさん:2007/04/29(日) 13:33:23
>>58
つまりWindowsは終わってると・・・
62仕様書無しさん:2007/04/29(日) 13:45:23
>61
OSに本来求めない機能を重視し始めたからなぁ
63仕様書無しさん:2007/04/29(日) 15:30:20
WindowsはOSの本来必要な部分で無限ループを使用してるわけだが
64仕様書無しさん:2007/04/29(日) 15:40:20
>>58はgotoじゃなくContinuationを使ってループを実現しろと
いっているんだ。ううん、知らないけど絶対そう。
65仕様書無しさん:2007/04/29(日) 15:46:19
末尾再帰かもしれん
66仕様書無しさん:2007/04/29(日) 20:58:16
while(1)W
どう考えてもfor(;;)の方がかわいいだろ。
67仕様書無しさん:2007/04/29(日) 21:03:01
while(-1)派がいないのに愕然とした
68仕様書無しさん:2007/04/29(日) 22:26:30
while(" 1回だけ実行! ") {
  // ちょっとしたフェイント
}
69仕様書無しさん:2007/04/29(日) 23:14:52
>>67
それ、ちょっとかわいいな。
70仕様書無しさん:2007/04/29(日) 23:33:11
>>67
メリットないしw

>>68
解読の邪魔すんなよw
71仕様書無しさん:2007/04/29(日) 23:38:36
>>70
文末w君連発キタコレ
72仕様書無しさん:2007/04/30(月) 00:29:26
while("無限ループ") {
  // 解読にちょっとした分かりやすさ
}
73仕様書無しさん:2007/04/30(月) 00:39:55
>>72
コメントに「無限ループ」って書いた方が早いだろ(笑
74仕様書無しさん:2007/04/30(月) 09:32:58
なぜforを使うのか知らない>>1が一番かわいいと思う
75仕様書無しさん:2007/04/30(月) 10:06:56
無限ループを書くことなんて常駐ループ以外にほとんど無いんじゃまいか?
流れが決まっている業務処理のコーディングで無限ループ書いてる奴とか
ちょっと反省しれ
76仕様書無しさん:2007/04/30(月) 10:17:44
>>75
コボラ2.0乙
77仕様書無しさん:2007/04/30(月) 10:19:40
>>75
途中で条件break書くんだよ低能
78仕様書無しさん:2007/04/30(月) 10:19:47
コボルなんぞ読まんし
79仕様書無しさん:2007/04/30(月) 10:21:32
条件breakで抜けるようなのは
アルゴリズム考えずにゴリゴリ書いてるだけ
80仕様書無しさん:2007/04/30(月) 10:22:18
>>79
変な宗教でもやってるの?
81仕様書無しさん:2007/04/30(月) 10:24:19
>>78
さすがコボラ2.0アホですね。

82仕様書無しさん:2007/04/30(月) 10:24:52
GWだな〜
83仕様書無しさん:2007/04/30(月) 10:27:34
>>81
はいはい、どうぞこれからも低性能なコーディングを続けてくださいね
84仕様書無しさん:2007/04/30(月) 10:35:23
どんだけアホですかW
お前の発想、全然かわいく無いよ。
どうせゲッティーばっか作ってる感じですか?
85仕様書無しさん:2007/04/30(月) 10:42:31
>>72の思考:実行ファイルの解読に配慮
>>73の思考:ソースファイルの解読のみ想定
86仕様書無しさん:2007/04/30(月) 10:46:08
>>84
うんうん、がんばれな
じゃあバーベキュー行ってくるんで
天気いいからおまぃも外に出ような
じゃな〜
87仕様書無しさん:2007/04/30(月) 10:46:09
>>85はどんだけバカなコンパイラ使ってるんだろう?
88仕様書無しさん:2007/04/30(月) 10:49:08
PGってこういうの好きだよね
89仕様書無しさん:2007/04/30(月) 10:50:14
一人BBQってカワイクね?
90仕様書無しさん:2007/04/30(月) 10:53:32
for(;;){
static int i = 0;
printf("狂った世界");
if(++i == 255) break;
}
91仕様書無しさん:2007/04/30(月) 11:36:26
for(int i = 0; i != 65535; i++){
printf("狂った世界");
}
92仕様書無しさん:2007/04/30(月) 16:30:02
■Suisui(今泉 誠)解任動議 今現在
http://ja.wikipedia.org/wiki/Wikipedia:%E7%AE%A1%E7%90%86%E8%80%85%E3%81%AE%E8%A7%A3%E4%BB%BB/Suisui_20070421#.E8.A7.A3.E4.BB.BB.E3.81.AB.E8.B3.9B.E6.88.90_.28Demand_the_resignation_of_the_sysop.29
解任賛成 : 32 (42.1%)
解任反対 : 44 (57.9%)
票差 : 12 /  合計: 76

今後、13票以上の解任賛成票が投じられない限り、Suisuiの留任は保証されます。

■投票期限まであと50時間を切りました。
投票期日 : 2007年5月2日 (水) 00:02 (協定世界時) まで
(注意! : 日本時間では2007年5月2日 (水) 09:02 までが投票期日となります!)

広域ブロック、対話拒否で批判されている彼を留任させるべきか、そうでないかを考えるまであとおよそ50時間近くあります。議論まとめページを良く読んでじっくり考えましょう。
http://ja.wikipedia.org/wiki/Wikipedia:%E7%AE%A1%E7%90%86%E8%80%85%E3%81%AE%E8%A7%A3%E4%BB%BB/Suisui/%E8%AD%B0%E8%AB%96%E3%82%92%E3%81%BE%E3%81%A8%E3%82%81%E3%81%9F%E3%83%9A%E3%83%BC%E3%82%B8

■以下の条件を満たさなければ無効票になりますので注意して下さい。
* 初めて編集した時から動議提出時までに1ヶ月以上を経過していること。
* その間、標準名前空間を50回以上編集し、
* 動議提出時から遡って直近1ヶ月の標準名前空間編集回数が5回以上あること。
■なお、この解任は、彼をメタウィキのスチュワードという
役職から解任させるものではありません。
日本ウィキペディアでの管理者という役職を解任させる是非を問うものです。
2chでのデマに惑わされないよう要注意して下さい。
■関連スレ 【百科事典】ウィキペディア第i386刷【Wikipedia】
http://hobby9.2ch.net/test/read.cgi/hobby/1177830010/
93仕様書無しさん:2007/05/01(火) 23:37:31
「Suisuiの留任」 をNGワードにしたよ
専ブラって便利だな
94仕様書無しさん:2007/05/02(水) 16:54:11
>>92っていったい何なの?
95仕様書無しさん:2007/05/03(木) 19:40:11
DO While DoEvents
Loop

無限ループといえばこれしか考えられない
96仕様書無しさん:2007/05/03(木) 22:36:32
label:
printf("無限ループ\n");
goto label;
97仕様書無しさん:2007/05/04(金) 15:46:03
無限に回した事なんか無いくせに。
98仕様書無しさん:2007/05/04(金) 19:19:49
int i = 0;

label1:
printf("有限ループ\n");

if(i != 2147483647){
goto label2;
}

goto label1;
label2:
99仕様書無しさん:2007/05/05(土) 04:59:56
>>97
何を言ってるんだ
この宇宙がそもそも無限ループだというのに
100仕様書無しさん:2007/05/05(土) 13:09:59
>>99
無限じゃあないってさ。long long らしいよ。
101仕様書無しさん:2007/05/05(土) 22:54:21
宇宙は0と無限を乗じた任意の定数。
これを矛盾という。
102仕様書無しさん:2007/05/06(日) 20:22:24
>>101
ちょww
103仕様書無しさん:2007/05/29(火) 17:43:16
保守
104仕様書無しさん:2007/05/30(水) 21:38:01
for(;;) 


  printf("無限ループ");
じゃいけないの?
105仕様書無しさん:2007/05/30(水) 21:45:08
君は頭がイイねぇ
106仕様書無しさん:2007/05/30(水) 23:41:27
>>104
どこに?
107仕様書無しさん:2007/06/07(木) 20:31:53
while("Unlimited Loop") {
// do something...
}
108仕様書無しさん:2007/06/09(土) 00:20:37
Unlimitedって限定解除の意味にならんか。
"Endless Loop" にしたほうがよくはないか。


109仕様書無しさん:2007/06/09(土) 17:21:33
void playNow(){
 try{
  while(1) {
   printf("アッ");
   playNow();
  }
 }catch(...){
  printf("アッーーー!!\n");
 }
}
110仕様書無しさん:2007/06/12(火) 02:21:52
for(;;)はwhile(1)よりタイプが少なくてイイ そんだけ。
111仕様書無しさん:2007/06/12(火) 11:03:05
ならばタイプが最小となるようなdefineマクロを作成すればもっとイイかと
112仕様書無しさん:2007/06/19(火) 19:41:24
#define
だけで7回もタイプしなきゃいけないし
113仕様書無しさん:2007/07/03(火) 15:06:28
CとかC++って、空行は非ゼロなの?
114仕様書無しさん:2007/07/03(火) 15:16:44
>>113
終了条件のない for が「無限ループの為の構文」なのは
while / if / switch で式を省略するとエラーになることから
容易に推測できそうなもんだが。
115113:2007/07/03(火) 15:43:57
>>114
そうなの?
1;
とか
;
とかと同じ構文だと思ってたんだけど、これらと同じではないの?
116仕様書無しさん:2007/07/03(火) 15:51:32
>>115
セミコロンの意味も違う。
普通は「文のターミネータ」、for の括弧内では「式のセパレータ」。
117113:2007/07/03(火) 16:03:19
ああ、やっとわかった。

whileなどは 式 を必要として、forは3つの 行 を必要とするのか。
つまり ; は文のセパレータ(つまり他のところと一緒)で合っている、と。
そして全ての 行 は値を持ち、デフォルトは非0なのね。
118仕様書無しさん:2007/07/03(火) 16:12:42
違う。forは3つの式を必要としていてそのセパレータがセミコロン。
かつ、forの式はどれも省略可能。
119仕様書無しさん:2007/07/03(火) 16:20:43
#define _ 1

for (;_;) {
}
120仕様書無しさん:2007/07/03(火) 18:56:49
>>119
電車で噴いた。
121仕様書無しさん:2007/07/03(火) 19:25:09
>>119
#define T_T 1

while (T_T) {
}

と並んで古典ネタだよな。
122仕様書無しさん:2007/07/03(火) 21:53:55
とりあえず>>113=117は式と文の違いからやりなおしだな。
123( _ 。。) _ バタ。 ◆eJlUd9keO2 :2007/07/03(火) 23:42:53
bWhileBreak = 1;
while( bWhileBreak ){

}

こうしてる。 1 って定数で廻す気がしない。
124仕様書無しさん:2007/07/04(水) 00:01:19
>>123 つまらんことはやめろ。

・変数が増えるので全体の煩雑さ増加に加担。
・変数の状態に気を配る必要が出て負担に。

一方、while(1) なら
・変数は増えない
・つねにtrueで心配無し

さらに for (;;)なら
・1という数字さえ追い出せる。
125仕様書無しさん:2007/07/04(水) 00:16:32
別に構わんだろ。
その変数の有効範囲が一覧できるなら。
126仕様書無しさん:2007/07/04(水) 00:38:25
>>125 (´・д・`) ヤダ

・変数名に疑問がわく

せめてunlessBreakでは?
などと言われたくなければfor (;;)になさいな。
127( _ 。。) _ バタ。 ◆eJlUd9keO2 :2007/07/04(水) 01:37:34
>>126
たしかに、あれは変だな。(自分で書いてなんだが

>変数が増えない
ipcや共有メモリで制御する場合に必要。
変なところでフラグ管理してbreakかますより安全。

>常にtrueで心配なし
後で書き直すのメンドクサイ。
自分しか使わないハックなやつなら異論は無い。

unlessBreak でも !bWhileBreak でも !bRakeFlagでもいいが。
for(;;)にするぐらいなら for(unlessBreak=1; unlessBreak; )にするわい。

128仕様書無しさん:2007/07/04(水) 01:37:53
(;;) ←だれかこいつに名前を付けてあげよう。
129仕様書無しさん:2007/07/04(水) 02:34:44
いっそ、goto文使うのと、何が違うのかと、小一時間・・・
130仕様書無しさん:2007/07/04(水) 05:08:23
可読性: while(1) >>>>>>>>>>>>>>>>> for(;;)
131仕様書無しさん:2007/07/04(水) 06:13:41
どちらを書いても「この書き方嫌い」という奴が出るので、
表記を統一しようというアホルール登場!?

#if I_LOVE_WHILE
#define forever while(1)
#else
#define forever for(;;)
#endif

//...

   forever {
      puts("無限ループって怖いよな");
   }
132仕様書無しさん:2007/07/04(水) 08:38:20
>>128
#define ever (;;)
for ever {
}

ということでeverちゃんで。(everたん?)

133仕様書無しさん:2007/07/04(水) 12:55:01
フォーエバーか。上手い事言うな。
134仕様書無しさん:2007/07/04(水) 13:29:38
>>127 ハァァ?? さっぱり意味が分からん。

> ipcや共有メモリで制御する場合に必要。
> 変なところでフラグ管理してbreakかますより安全。

ipc?(ぐぐってみたけどプロセス間通信?)
それとどう関係があるの?ループの書き方の話と。

ひょっとしてその変数はゼロを入れたりすんの?

> 後で書き直すのメンドクサイ。

ハァァ??

while (bWhileBreak) {}
:
while (bWhileBreak) {}
:

って沢山あって、bWhileBreakにゼロか非ゼロか入れたりすんの?
一度もループしないか、無限ループか、そんなもんがありうるの?
135仕様書無しさん:2007/07/04(水) 14:24:36
>>130
無限ループがwhile(1)かwhile(0)かど忘れするヘタレなおいらはfor(;;)派。
136仕様書無しさん:2007/07/04(水) 14:25:10
無限ループの話をしてるのに、スレタイも空気も読めないコテがいますね。
137仕様書無しさん:2007/07/04(水) 14:40:58
for は一定回数ループさせる
while は条件を満たすまでループさせる
ってのが頭にあるからforでの無限は考えたことが無かったな
whileでも(1)は使わないで変数に真値を入れてまわしている
処理中でも所々にデータチェック入れて異常値ならループ抜けるようにしている
異常値になる事は無いとしても小心者だからヽ(´―`)ノ
138仕様書無しさん:2007/07/04(水) 14:46:48
上の補足
ループ抜けるにしてもbreakやcontinueを使わないで変数に偽値入れて抜けさせてる
139仕様書無しさん:2007/07/04(水) 15:32:15
>変数に偽値入れて抜けさせてる

Pascalではコンパイルエラー。
140仕様書無しさん:2007/07/04(水) 15:46:09
ループカウンタをいじるってのは
むしろ汚いコーディングの部類だよな
141仕様書無しさん:2007/07/04(水) 15:52:21
>むしろ

この部分不要。
142仕様書無しさん:2007/07/04(水) 16:43:44
ここの住人って綺麗なコード書く人が多そうだねヽ(´―`)ノ

で、ここってコードを綺麗に書く自慢のスレですか?
143仕様書無しさん:2007/07/04(水) 16:50:54
自慢じゃなくて、モラル。
144仕様書無しさん:2007/07/04(水) 16:57:10
こういうとこからキッチリしていかないと、
煩雑さはどんどん忍び寄ってくる。
そしてそれは人やプロジェクトを壊す。
145仕様書無しさん:2007/07/04(水) 18:42:24
割れ窓の理論だね。
146仕様書無しさん:2007/07/04(水) 21:04:54
要するに、例外処理だろ?
147仕様書無しさん:2007/07/04(水) 21:10:44
なにが要するに、だよw
148仕様書無しさん:2007/07/04(水) 21:41:58
割れ窓理論は「達人プログラマー」で初めて知ったが、
なんで The Pragmatic Programmers をこういう邦題に
したんだろ。
149仕様書無しさん:2007/07/04(水) 23:20:36
ロジックとして特定の変化があるまでループをし続けるアルゴリズムを
「無限ループ」と呼ぶのに抵抗がある。
自分の感覚では「無限ループ」っていうのは「陥って抜け出せなくなってしまった状態」であって
ループから出るための変化が起きるのを待っている、というのを「無限ループ」とは
何でか言いたくないんだよな。
150仕様書無しさん:2007/07/04(水) 23:22:52
真偽判定が0かそれ以外か、という時点で古めかしい言語仕様だよな。
1とか定数で使いたくない俺はfor(;;)派。
151仕様書無しさん:2007/07/04(水) 23:28:24
>>149
無条件ループでいいんだっけ?
152仕様書無しさん:2007/07/04(水) 23:37:04
月までしか伸ばしたこと無いのに無限拳っていうのと変わんないよ
153仕様書無しさん:2007/07/05(木) 08:31:06
ループとそれを実行するスレッドを分離して
whileの条件判定でスレッドの生存を確認するようにすれば無条件ループにならないよ><
これならおkですよね?
154( _ 。。) _ バタ。 ◆eJlUd9keO2 :2007/07/05(木) 09:52:44
>>134
ある。 単に「逃げ道」はあるが
抜けるための条件を満たさせる処理が
ループしてるプロセス側等で持っているわけじゃない。

>>136
『whileもforもどっちでもいい』
どっちも可愛いので問題ない。
やや定数を書かないで済む for(;;) 寄りではある。
155仕様書無しさん:2007/07/05(木) 18:40:25
while (1.5) {}
156仕様書無しさん:2007/07/05(木) 21:54:11
while("無限") /* something */ ;
157仕様書無しさん:2007/07/05(木) 21:58:11
#define forever() for(;;)
158仕様書無しさん:2007/07/06(金) 23:57:26
while("1回だけ")
159仕様書無しさん:2007/07/07(土) 00:06:27
while (777) {
}
160仕様書無しさん:2007/07/07(土) 00:16:56
>>158は、
while("何もしないから、ね?")
みたいなもんか
161仕様書無しさん:2007/07/07(土) 05:21:43
while("先っぽだけ")
162仕様書無しさん:2007/07/07(土) 05:33:27
>>161
それじゃいつまで経っても先っぽだけだぜ
163仕様書無しさん:2007/07/07(土) 10:28:04
下らん議論に今終止符が打たれる!
loop:
goto loop;
164仕様書無しさん:2007/07/07(土) 15:40:54
すくなくともCでは無条件ループはwhile(非0)ではなくfor(;;)が文法的には正解に近い。
なぜならwhileの条件は省略可能ではないため常に真となる条件を評価しなければならないが、
forの2番目の条件部分は省略可能であり省略された場合は常に真とみなされ、評価は行われないから。
いまどきのコンパイラにかかればどっちでも同じ結果になるだろうけど。
165仕様書無しさん:2007/07/07(土) 18:00:25
>>164
> いまどきのコンパイラにかかればどっちでも同じ結果になるだろうけど。
んなもん、15年前のコンパイラだって真っ先に最適化してくれる。
大事なのは、(あまり分かってない)人間にとって、どちらが誤解なく
受け入れられるかということ。
166仕様書無しさん:2007/07/07(土) 18:14:04
確かにfor(;;)の方が誤解は少ないな
167仕様書無しさん:2007/07/07(土) 19:23:29
>165
最適化については期待できないコンパイラが世の中には山ほどあることも忘れちゃいけない。
168仕様書無しさん:2007/07/07(土) 19:38:17
日立を愚弄する気か貴様!
169仕様書無しさん:2007/07/07(土) 20:09:46
何いきり立ってるの?
170仕様書無しさん:2007/07/07(土) 20:22:13
HITACHIには技術は無いけどそれを補って余りある愛が満ちてる
171167:2007/07/07(土) 20:49:45
日立とか一言もいってないのに…なんでわかったんだろ?
172仕様書無しさん:2007/07/07(土) 20:51:39
どれだけ最適化をしようとここで浪費した時間は誰にも取り戻せはしないのだ
173仕様書無しさん:2007/07/07(土) 21:22:50
三脚は1脚2脚と数えるよ
174仕様書無しさん:2007/07/09(月) 13:30:22
てっきり3脚6脚…って数えるものだとばかり思っていました。
175仕様書無しさん:2007/07/09(月) 14:20:35
あーboost::for_eachとか使ってループ撲滅したい
176仕様書無しさん:2007/07/09(月) 15:00:18
for (;;) {} の方が俺は好き。
while (1) {} は見ててムカムカする。本来条件を書くための
場所に定数を書くとは何ごとか。と言いたくなる。
177仕様書無しさん:2007/07/09(月) 18:19:15
#define FOREVER 1

while(FOREVER)

こう書けば意図が明確になりさらに詩的な感じがしてはこないだろうか
178仕様書無しさん:2007/07/09(月) 18:46:47
while ("賽の河原で積み石")

こう書けば意図が明確になりさらに宗教的な感じがしてはこないだろうか
179仕様書無しさん:2007/07/09(月) 18:48:22
while("怖くね?")
180仕様書無しさん:2007/07/09(月) 19:36:09
>>177
お前のようなやつには途中にコレを入れてやる。

#ifdef FOREVER
#undef FOREVER
#define FOREVER 0
#endif
181仕様書無しさん:2007/07/09(月) 22:40:55
>176
いやぁ、あなたみたいなコンパイラ、多いんですよ。そんな些細なことにwarning出さなくてもいいのに。
182仕様書無しさん:2007/07/09(月) 23:29:32
>>180
よーし、パパ グローバル定数定義しちゃうぞー。
const int FOREVER = 1;
183仕様書無しさん:2007/07/10(火) 00:14:27
コンパイラに文句は言わせねぇ!

int Forever(void)
{
return 1;
}


while (Forever()) {
}
184仕様書無しさん:2007/07/10(火) 00:30:30
for (int i = Forever(); i < 5; ++i) {
}

永遠なんてこれっぽっちさ...
185183:2007/07/10(火) 00:39:06
あああああぁぁぁ……
俺の永遠がああああああっっっ……
186仕様書無しさん:2007/07/10(火) 01:19:37
void forever(void);
void forever(){forever();}
187仕様書無しさん:2007/07/10(火) 01:29:15
>>186
それじゃ、そもそも永遠にならない。
早晩、スタックが果てる。
188仕様書無しさん:2007/07/10(火) 01:30:43
永遠なんてこの世に無いってことを示してみた

ギオン・ショージャー
189仕様書無しさん:2007/07/10(火) 05:35:57
#ifdef I_LOVE_FOR
#define loop for(;;)
#endif

#ifdef I_LOVE_WHILE
#define loop while(1)
#endif

loop
{
 puts("これで解決");
}
190仕様書無しさん:2007/07/10(火) 05:48:19
>>184
愛は永遠だと思っていたのに!!
191仕様書無しさん:2007/07/10(火) 11:32:04
forever: goto forever;
192仕様書無しさん:2007/07/10(火) 14:04:11
for(;;)
悲しみのために
193仕様書無しさん:2007/07/10(火) 14:29:21
for ( ;(ェ); )
194仕様書無しさん:2007/07/10(火) 15:07:06
愛が永遠かは試してみれば分かる。
iとか日本でしか通じないから国際標準のLOVEを用いる。

for ( ; LOVE; ) {
}

LOVEを数値で定義するとすると、ゼロの意味を持っているので、
その定義は

#define LOVE 0
195仕様書無しさん:2007/07/10(火) 15:12:01
for (´;ω;`)
196仕様書無しさん:2007/07/10(火) 15:53:51
#define _
...
for(;_;)
197仕様書無しさん:2007/07/11(水) 11:06:20
>>196
今までのレスでこれが最高w
198仕様書無しさん:2007/07/11(水) 11:28:48
for ever don't cry.
199仕様書無しさん:2007/07/11(水) 20:18:08
http://d.hatena.ne.jp/nowokay/20070710#1184063857

> boolean TдT = true;
> while(TдT){
>  System.out.println("帰れません");
> }

これいいなw
200仕様書無しさん:2007/07/11(水) 23:37:10
泣くの止めたら帰れるのに
201仕様書無しさん:2007/07/12(木) 09:05:39
202仕様書無しさん:2007/07/12(木) 09:30:56
>>200 素敵発言キタワァ*・゜゚・*:.。..。.:*・゜(n‘∀‘)η゚・*:.。. .。.:*・゜゚・* !!!!!
203仕様書無しさん:2007/07/12(木) 14:09:38
int i=1;
while(i){
}
204仕様書無しさん:2007/07/12(木) 20:44:32
while(true){}

C#だとwhile()の条件にbool以外渡すと怒られる
205仕様書無しさん:2007/07/13(金) 03:04:48
そんな特定環境向けの特殊な言語の事を自慢げに語られても困る
206仕様書無しさん:2007/07/13(金) 10:03:07
「特定環境」がデファクトスタンダードとは是如何に。
207仕様書無しさん:2007/07/13(金) 17:25:48
windowsはデファクトでも.netはデファクトとは今の状況じゃ言えない。
208仕様書無しさん:2007/07/13(金) 18:27:00
デスクトップ・サーバシェアがもうじき50%を突破するVistaのカーネルは.NETで書かれているわけだが。
209仕様書無しさん:2007/07/13(金) 19:07:18
>>208
>デスクトップ・サーバシェアがもうじき50%を突破するVista
( ゚Д゚)
>Vistaのカーネルは.NETで書かれている
( ゚Д゚)
210仕様書無しさん:2007/07/13(金) 19:36:05
素数発言わろす
211仕様書無しさん:2007/07/13(金) 20:58:54
while("デスクトップ・サーバシェアがもうじき50%を突破するVista") {
 while("カーネルは.NETで書かれているわけだが") {
  puts("。");
 }
}
212仕様書無しさん:2007/07/14(土) 01:44:11
流石にカーネルは.NETじゃないなw
確かVistaはウィンドウ内へのコンポーネントの配置や描画のAPIが
DirectX経由してるんじゃなかったっけ?
エディションによって違うのかも知れんが
213仕様書無しさん :2007/08/08(水) 00:01:18
while(1)
使いまくってる。。。
しっくりこないけど、for(;;)に乗り換えるか。

既出だけど、VCで警告レベル最大にするとwarningで怒られる。
if (0 == i) はもっと気持ち悪い上、変数同士の比較には使えないから
警告出さん訳にはいかんし。。。
214仕様書無しさん:2007/08/21(火) 22:40:29
#define _
...
for(;_;)

が今んとこ一番可愛い。

215仕様書無しさん:2007/08/22(水) 14:52:42
#define ToT ;;
216仕様書無しさん:2007/08/22(水) 20:52:04
217仕様書無しさん:2007/09/10(月) 23:22:37
|@
c D)
|@

218仕様書無しさん:2007/09/11(火) 07:59:44
while(1){
printf("寿司食いたいフフフフフフフフフフフ");
219仕様書無しさん:2007/09/12(水) 04:16:46
r(;;) ←頭を掻くアシカ
220仕様書無しさん:2007/09/12(水) 11:14:44
return
('^')?
x:y
;

221仕様書無しさん:2007/09/14(金) 03:12:28
orz=3=3=3=3=3
;
222仕様書無しさん:2007/10/01(月) 14:37:10
c++++++++++++++++++++++++++++++++++++++++++++++++++++++;/*
終了 */
c++++++++++++++++++++++++++++++++++++++++++++++++++++++;
223仕様書無しさん:2007/10/01(月) 15:25:57
for(;;)にマジレス突っ込めるくらいでないと、業界で生きのこるには難しい。


何しろ「泣き顔」ってのが良くないね。
224仕様書無しさん:2007/10/01(月) 16:25:11
if((i=j=l=m=n=0)==0){};
225仕様書無しさん:2007/10/04(木) 10:55:53
#define infinity (1)
while infinity {
}
がカコイイと思った
226仕様書無しさん:2007/10/04(木) 11:05:17
double x = infinity;
とか書いてみて混乱させるのが通
227仕様書無しさん:2007/10/04(木) 11:46:57
タイプ量をわざわざ多くしてどーする
228仕様書無しさん:2007/10/04(木) 18:02:18
>>227
{ を BEGIN、} を END とdefineするPASヲタもいるでよ
229仕様書無しさん:2007/10/04(木) 21:13:18
while inifinity じゃ読み下すことも出来ないな…
230仕様書無しさん:2007/10/05(金) 09:55:35
じゃ
#define infinite ;
#deinfe loop (1)

infinite while loop {
 ;
}
231仕様書無しさん:2007/10/05(金) 10:06:15
#define zero 0
#define one 1
#define twe 2
...
232仕様書無しさん:2007/10/05(金) 10:14:57
twe(w
233仕様書無しさん:2007/10/05(金) 14:14:51
#define endless loop
#define loop infinity
#define infinity endless
234仕様書無しさん:2007/10/05(金) 18:11:59
#define ω
#define oO(x)
for(;ω;) oO(帰りたい・・・)
{
}
235仕様書無しさん:2007/10/05(金) 20:37:57
#undef NULL
#define NULL (new char[100000])

顧客や上司に不満を覚えた場合は
こうやって不明なバグを作ってみる
236仕様書無しさん:2007/10/05(金) 22:41:41
>>233
Perlのラクダ本についてた用語集(1st Ed.限定)を思い出した。
237仕様書無しさん:2007/10/06(土) 14:57:49
enum {
 zero,
 one,
 two
};
238仕様書無しさん:2007/10/06(土) 23:22:51
enum {
zero = -1,
one,
two
};
239仕様書無しさん:2007/10/09(火) 11:15:10
>>238
これでバグ出ると気づくまでが長そう
(((((;゚Д゚)))))ガクガクブルブル
240仕様書無しさん:2007/10/16(火) 00:14:21
バグなぞどれも気付くまでが長いんだよ。
241仕様書無しさん:2007/10/18(木) 18:39:43
何かのコーディング規則で for (;;) を使え、となっているのを見た記憶が
あるが思い出せない。for (;;) は極端に嫌う人もいるよね
242仕様書無しさん:2007/10/18(木) 20:12:43
>>241
思い出せないくらい昔の話なら、それが正解だった時代だと思う。
コンパイラの最適化の話で。
243仕様書無しさん:2007/12/04(火) 22:24:00
whileの構文の{}の中身をサブルーチン化しちゃうくらい昔の話?
244仕様書無しさん:2008/01/01(火) 12:15:41
現実を診てね
245仕様書無しさん:2008/01/01(火) 12:42:44
while
って
イモ
246仕様書無しさん:2008/01/01(火) 12:44:03
write
って
イイ
247名無し@数馬 ◆stgT3yiByc :2008/01/02(水) 22:10:48
常に真とか書くの気持ち悪いから僕はfor(;;)派です^^
248仕様書無しさん:2008/01/02(水) 22:45:46
懐かしいなぁ。
ループ内の条件判定一個なくすだけで実行時間に現れて来る時代の業だ。
249仕様書無しさん:2008/01/03(木) 17:21:46
アウト
250仕様書無しさん:2008/01/03(木) 18:18:36

中でカウンタを回すならfor(;;)の方がいいような気がする
251仕様書無しさん:2008/01/03(木) 18:23:15
while(1)はねーよwwwww
と思ったら完敗だった・・・orz

for(;;) 約43,500件中1 - 10件目(0.68 秒)
http://www.google.com/codesearch?hl=ja&lr=&q=for%5C%28%5Cs*%3B%5Cs*%3B%5Cs*%5C%29&btnG=%E6%A4%9C%E7%B4%A2

while(1) 約102,000件中1 - 10件目(2.37 秒)
http://www.google.com/codesearch?hl=ja&lr=&q=while%5C%28%5Cs*1%5Cs*%5C%29&btnG=%E6%A4%9C%E7%B4%A2

ちなみにfor(;1;)は0件だったw
252仕様書無しさん:2008/01/03(木) 21:03:42
>>251
for (;;) のパターンが抜けているぜ!
  ↑空白

for\s*\(\s*;\s*;\s*\) lang:c
なら17万だぜどっこいどっこいだぜ
253仕様書無しさん:2008/01/04(金) 00:37:41
>>252
そのままwhile¥s*¥(¥s*;¥s*;¥s*¥) lang:cで調べれば?
254仕様書無しさん:2008/01/04(金) 01:22:32
17対19だろ
だからどっこいだよ
255仕様書無しさん:2008/01/05(土) 03:41:15
for (i=0; i<10; j++) {
}
256仕様書無しさん:2008/01/23(水) 05:00:30
仕様書: 「文字列の長さが 0 でなかったら」
コード .: if((str.length() == 0) == false)
257仕様書無しさん:2008/03/16(日) 23:56:53
ところでさ、無限ループってこわくね?
258仕様書無しさん:2008/03/16(日) 23:58:17
お前らまだ手続き型やってんの?
259仕様書無しさん:2008/03/17(月) 00:07:59
#include <stdio.h>

#define _ ((i++) <= 10)

int main() {
int i = 0;
for(;_;) printf("もう帰りたい (;_;) \n");
return 0;
}
260259:2008/03/17(月) 00:14:32
>>234に先達が居た。吊ってくる。
261仕様書無しさん:2008/03/17(月) 10:48:38
関数型でも普通に止まらない再帰を書けるしw
262仕様書無しさん:2008/03/21(金) 16:50:34
void endless(){endless();}
263仕様書無しさん:2008/03/21(金) 21:31:24
お前ら、Hoareとかloop invariantとか知らないの?
264仕様書無しさん:2008/03/21(金) 22:09:04
知らん
語りたかったら語ることを許すから分かるように説明しろ
265仕様書無しさん:2008/03/22(土) 08:12:03
>>264 ググれ
266仕様書無しさん:2008/03/22(土) 09:07:36
>>265
わざわざ上げてるから語ってるのかと思いきや
お前も結局名前しか知らんのか

役に立たない奴だぜ、まったく
267仕様書無しさん:2008/03/22(土) 11:15:07
>>266
どっちもVerificationの話だ。わかったらググれ、馬鹿
268仕様書無しさん:2008/03/22(土) 11:22:01
>>1
えっ・・・(////  今・・何て?(ポッ
269仕様書無しさん:2008/03/22(土) 11:56:48
>>267
わざわざ説明の機会をくれてやったのに二言目にはググれか・・・
お前上司説得したり、プレゼンするの下手だろ?
270仕様書無しさん:2008/03/22(土) 12:03:32
>>269 おまえは典型的なゆとり脳だな。
これだけヒントが出ているのに自分で調べられんのか、低能。
271仕様書無しさん:2008/03/22(土) 12:04:41
>>269
そもそも誰が上司だって?wwwう゛ぁーか
272仕様書無しさん:2008/03/22(土) 17:38:51
>>270
お前は自分の立場をわきまえろ
これは俺だけが知ってるんだぜウシシシと思うならもう黙ってろ
別の俺はお前の知ってる知識を知りたいとは思わんからな

>>271
お前の読解力のなさは底抜けだな
お前が社長でなければお前にも上司がいるだろ?
その上司への説得が下手だろと言ってるんだ

これ以上お前とグダグダやってても埒が明かないんで
もうお前の好きなようにさせてやるからなくなり喚くなり好きにしろ
273仕様書無しさん:2008/03/22(土) 17:59:45
>>272
> お前は自分の立場をわきまえろ

人にモノを教えてもらおうというお前が自分の立場と能力をわきまえろ。
274仕様書無しさん:2008/03/23(日) 10:26:38
春だなぁ
275仕様書無しさん:2008/03/27(木) 16:07:22
NGワード: ググ
276仕様書無しさん:2008/03/27(木) 16:19:29
「お前ら〜知らないの?」って訊く奴は
「不特定多数に対して訊いても、そりゃ知ってる奴も知らない奴もいるだろう」
程度の想像も出来ないんだろうか。のうたりん?
277仕様書無しさん:2008/03/27(木) 19:20:41
馬鹿同士だとつまらん口論で盛り上がれて楽しそうだな
278仕様書無しさん:2008/03/27(木) 21:26:52
ゲルググって格好いいよね
279仕様書無しさん:2008/03/27(木) 21:39:33
わからなければまず自分で調べる。これ基本。
この基本が身についていないのは、ゆとり世代。
280仕様書無しさん:2008/03/27(木) 23:39:00
ゲルググは格好いい。これ基本。
この基本が身についてないのは、ゆとり世代。
281仕様書無しさん:2008/03/27(木) 23:40:25
何でもガンダムに持ってく世代もたいがいだよ
同世代なのに溶け込めん
282仕様書無しさん:2008/03/28(金) 00:57:34
何でもゆとりに持ってく世代もたいがいだよ
同世代なのに溶け込めん
283仕様書無しさん:2008/03/28(金) 01:01:25
何でもレッテル張りすればいいと思ってるのって、頭悪そうだよな。
284:2008/03/28(金) 01:12:46
人の嫌がるであろうソースを書くのが快感

※煽りじゃないよ。マジで。
285仕様書無しさん:2008/03/28(金) 08:20:45
結局お前ら、Hoare logicとかloop invariantとかわかったのか?プ
286仕様書無しさん:2008/03/28(金) 17:56:35
結局お前ら、Hoare logicとかloop invariantとかわかったのか?プリンの事だよ
287仕様書無しさん:2008/03/28(金) 20:30:30
ほっちゃーん、ほ、ほ、Hoare-----!
288仕様書無しさん:2008/03/29(土) 12:33:45
んでまあ、ホアーとか何とかはググるからいいとして、
>263 はこれから何を語ろうとしてるのか
ずっと待ってんだけど。
全裸で。

なんか講釈たれたかったんじゃないんか?
全裸で。
289仕様書無しさん:2008/03/29(土) 12:49:06
お前は一体何日間素っ裸でいるんだよ?
290葉猫 ◆Jz.SaKuRaM :2008/03/29(土) 12:52:54
今日、ガンダムおっぱいおっぱいの前半終了だから全裸待機ちてるの多いな (・∀・)
291仕様書無しさん:2008/03/29(土) 20:07:53
無限ループか。
それは確かめたんだろうな?

292仕様書無しさん:2008/03/30(日) 02:37:45
>>288
お前はリアルで孤独で無味乾燥な生活を送っているおっさんに
よくしってまちゅねーしゅごいでちゅねーくらいの言葉をかけて
自尊心を満足させてあげようとは思わないのか。
293仕様書無しさん:2008/03/30(日) 06:56:41
>>292
お前はリアルで孤独で無味乾燥な生活を送っているゆとり脳に
よくつっこみまちゅねーしゅごいでちゅねーくらいの言葉をかけて
自尊心を満足させてあげようとは思わないのか。
294仕様書無しさん:2008/03/30(日) 08:12:17
最近、相手に”ゆとり”のレッテルと貼り付けるとそいつがゆとりになって自分がゆとりじゃなくなると思ってるお子様が多いな
295仕様書無しさん:2008/03/30(日) 08:45:47
>>294
たとえば>>294とかな。
296仕様書無しさん:2008/05/06(火) 22:24:30
while(TRUE)とwhile(1)ってどっちが多いんだろう

やっぱりwhile(1)のほうがみやすいのかな?
297仕様書無しさん:2008/05/07(水) 00:34:47
while TRUE はどこかで TRUE が定義されてないとダメだし
298仕様書無しさん:2008/05/07(水) 13:51:48
こっそり
#define TRUE 0
とか書いておいて意地悪するンですね。わかります
299仕様書無しさん:2008/05/07(水) 15:45:06
#define TRUE (1/10 == 0.1)

にしようぜ。
300仕様書無しさん:2008/05/07(水) 20:11:51
そんな意地悪する人ほんとにいるのかな・・?w
301仕様書無しさん:2008/05/08(木) 02:02:26
これでいいよ
#define TRUE ( rand() % 8192 )
302仕様書無しさん:2008/05/08(木) 04:07:24
呼び出すたびに値が変わるのか
303仕様書無しさん:2008/05/08(木) 12:23:29
>>302
時々falseを返すんだろ?
304仕様書無しさん:2008/05/08(木) 23:47:19
大丈夫、追跡可能だし。
305仕様書無しさん:2008/05/13(火) 10:19:09
(;;)泣いているみたいだ
306仕様書無しさん:2008/05/13(火) 12:30:07
フォー
307仕様書無しさん:2008/07/04(金) 08:04:31
ECMAScript系なら
while (Infinity)
308仕様書無しさん:2008/07/12(土) 00:06:17
#define Infinity 1

こうですね
309仕様書無しさん:2008/07/12(土) 02:45:08
for(;ever;) のほうが詩的だろう
310仕様書無しさん:2008/07/12(土) 15:19:52
#define I_wait_you 1 // 私、待〜つわ

while (I_wait_you) { .// いつ〜まで〜も 待〜つわ
311仕様書無しさん:2008/07/28(月) 21:38:06
while(exit){
}
312仕様書無しさん:2008/07/29(火) 20:59:06
white(christmas){
}
313仕様書無しさん:2008/07/29(火) 23:03:24
クリスマスは中止になるから、無限ループしないよ?
314仕様書無しさん:2008/08/03(日) 01:00:02
while(""){}

while('0'){}

while("\0"){}

while(-1){}

while((int)getchar==-1){} /* まともに型チェックしてるコンパイラならエラー出るかも */

for(i=100;i=0;i--){}

for(i=0,s="\nHelloWorld\n";i;i=s[i+1]){}

for(p=0;free(p);p=malloc(1)){}

お好きなのをどうぞ。
315仕様書無しさん:2008/08/03(日) 20:56:26
> for(p=0;free(p);p=malloc(1)){}
316仕様書無しさん:2008/08/03(日) 21:03:16
どうみても
for(p=0;p=malloc(1);free(p)){}
317仕様書無しさん:2008/08/03(日) 21:04:56
途中で書いてもた。

どうみても
for(p=0;p=malloc(1);free(p)){}
の間違いだな。
318仕様書無しさん:2008/08/11(月) 20:35:18
ここにきてそんなつまらんものかかれてもねぇ
319仕様書無しさん:2008/10/25(土) 14:57:51
#define XD 1
while(XD);
320仕様書無しさん:2008/10/26(日) 10:53:07
boolean д = true;

for(;д;){
System.out.println("でれません");
}

boolean ω = true;
for(;ω;){
System.out.println("ぬけれません");
}

boolean ェ = true;
for( ;(ェ); ){
System.out.println("終わりません");
}

boolean TдT = true;
while(TдT){
System.out.println("帰れません");
}
321仕様書無しさん:2008/10/26(日) 14:57:33
全角記号が通るコンパイラってヤバいね。
322仕様書無しさん:2008/10/27(月) 09:33:47
「全角」とかぬかす奴よりはまともだと思うが。
323仕様書無しさん:2008/10/27(月) 11:31:35
>>321
ウニコード対応だと全角いけちゃうのか。
324仕様書無しさん:2008/10/28(火) 09:14:51
>>322
では何と言うべきなのか、教えてくれ。
325仕様書無しさん:2008/10/28(火) 11:13:34
「プラットフォームがサポートする文字セット」
で、識別名としてそれらの文字セットが使えたとしても
何の不思議もないわけだが。
326仕様書無しさん:2008/10/28(火) 18:00:03
その言語の識別子名のBNF定義次第
327仕様書無しさん:2008/10/29(水) 02:49:05
日本語の場合はウニコードやシフトJISやEUCや…と、色々あるから面堂なのさ。
328仕様書無しさん:2008/10/29(水) 08:14:37
>>327は頭が悪すぎる。
329仕様書無しさん:2008/10/29(水) 12:14:42
327が頭悪いのは認めるが、コンパイラも文字コードを自動認識してくれないからなぁ。
330仕様書無しさん:2008/10/29(水) 12:22:38
# -*- coding: utf-8 -*-
331仕様書無しさん:2008/10/29(水) 18:31:13
>>326
BNFはあくまで表現手段なんで、仕様詳細には
あんまり関係ないので、念のため。

まあ、言いたいことはだいたいわかるが。
332仕様書無しさん:2008/10/29(水) 19:21:21
言語仕様の一部としてトークンをBNFで定義してある言語はよくあると思うけど。
正規表現の場合もあるかな。
333仕様書無しさん:2008/12/26(金) 14:20:36


('仄')パイパイ

334仕様書無しさん:2008/12/26(金) 23:38:54
正規表現はないだろ
335仕様書無しさん:2008/12/27(土) 00:08:02
# -*- coding: mbcs -*-
'''
正規表現でトークンを表せてもいいんじゃね?
PLYとかでも使えるし。
'''
336仕様書無しさん:2008/12/28(日) 22:41:31
>>332
だから、それはあくまでも表現でしかない。

BNFだろうが正規表現だろうが、もっと言えば、
英語だろうが日本語だろうが、関係ない。

>>326は、識別子の仕様次第と書くべきだった。
337仕様書無しさん:2008/12/31(水) 08:33:36
for ('A`)
338仕様書無しさん:2009/01/05(月) 15:05:56
大昔の話だが、
while(1)は
l1:
moveq #1,d0
beq l2
...
bra l1
l2:

と展開され、for (;;)は
l1:
...
bra l1

と展開されたのだよ。
それを読んでいた奴は絶対にwhile(1)は使わない。
まあ、大昔の話だがな。
339仕様書無しさん:2009/01/05(月) 16:04:46
ほーと思って今見てみた。

void a() {
int i = 0;
for (;;) i++;
}
void b() {
int i = 0;
while(1) i++;
}
int main() {
return 0;
}
で、該当部分はそれぞれ、

L2:
leal -4(%ebp), %eax
incl (%eax)
jmp L2

L5:
leal -4(%ebp), %eax
incl (%eax)
jmp L5

となってた。
$ gcc --version
gcc (GCC) 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
Copyright (C) 2004 Free Software Foundation, Inc.
340仕様書無しさん:2009/01/05(月) 16:23:07
LSI C-86 (1993年)でさえ
a_::
XOR AX,AX
_2:
INC AX
JMP _2



b_::
XOR AX,AX
_8:
INC AX
JMP _8
とコンパイルしたから、
よっぽど昔の話だな。
341仕様書無しさん:2009/01/05(月) 16:41:10
この場合の大昔って80年代前半とかだろ
342仕様書無しさん:2009/01/06(火) 02:57:41
while(1)は「条件が常に真」をコンパイラが特別なコードにしてる訳で、
無条件ループなら「判定条件なし」のfor(;;)の方が正しいような気がするけどね。
343仕様書無しさん:2009/01/06(火) 11:38:06
確か、なにかのコーディングガイドラインでfor(;;)を使え、というのを見たことがある。

個人的に知ってるfor(;;)反対派の意見としては、条件節になにも書いてないのは
不気味だ、と言っていたな。
344仕様書無しさん:2009/01/06(火) 15:11:50
出力結果が同じなら、
「周りの声がでかい奴に合わせておけ」って事でFAなんじゃね?
345仕様書無しさん:2009/01/06(火) 19:50:31
>>343
経験値が低いから不気味に感じるんだろ。
346仕様書無しさん:2009/01/06(火) 21:03:16
この手の論争は下らない。
好きな方使えばいい。
声がでかくて煩い奴が居るならば、置換すりゃ解決するレベル。
347仕様書無しさん:2009/01/06(火) 21:10:49
whileの中身がboolじゃないといけない場合、
while(true)に書き直すんだろうか。

というより、forの条件を書かないとtrue扱いになるのなら、
なぜwhile()という書き方は許されないのだろうか。
348仕様書無しさん:2009/01/06(火) 22:03:06
>>343
?:演算子なんかもっと不気味じゃね?
349仕様書無しさん:2009/01/06(火) 22:28:01
>>348
どこ(のスレ)で聞いたか忘れたが、3項演算子使用禁止の会社があるらしいぜ。
350仕様書無しさん:2009/01/07(水) 01:23:12
>>347
だから元々パーフェクトなしようのげんごじゃないってばよー
351仕様書無しさん:2009/01/07(水) 09:28:06
return !p ? p->foo() : 0;
みたいに書きたいから参考演算子は必須。

しかし、参考演算子をネストしていくのは(´・д・`) ヤダ
慣れてる人にはお馴染みなのかもしれんが…。
352仕様書無しさん:2009/01/07(水) 09:32:36
>>351
p && p->foo() のほうが単純明解という気がしなくもない。
353仕様書無しさん:2009/01/07(水) 10:05:23
>>347
>forの条件を書かないとtrue扱いになるのなら
いやだからこそ、無限ループのためにわざわざ作られた構文なんだって。
354仕様書無しさん:2009/01/07(水) 10:59:33
ふと思ったのだが、4項以上の演算子ってどんなんだろうか?
355仕様書無しさん:2009/01/07(水) 13:30:07
>>351 が気持ち悪いのは同意だが
>>352 はもっと気持ち悪い。perlみたい。
てか>>351ってバグってねえか?
return p ? p->foo() : 0;
ならわかるが。
気持ち悪い書き方をした報いが早速出てるって訳だ。
356仕様書無しさん:2009/01/07(水) 13:33:47
>>355
すまんw ばぐってる、書いた直後に赤面した。
returnを一行にしたいために三項演算子使うの、
俺にとっては少しも気持ち悪くない。
357仕様書無しさん:2009/01/07(水) 13:34:50
if p
return p->foo()
else
return 0;

return が 2 つに分かれるのがよくない。

あるいは、

int r;
if p
r = p->foo()
else
r = 0;
return r;

変数が増える。

冗長であることを気持ち悪いと思わない奴は好きにしな、って感じ。
358仕様書無しさん:2009/01/07(水) 15:34:03
>>355
>>352 は C の伝統的、かつまっとうな記述。

>>357
>return が 2 つに分かれるのがよくない。
かどうかは各自あるいは各職場にて判断汁。
359仕様書無しさん:2009/01/07(水) 17:13:42
>>352 は例えば

while (p && p->foo()) {
 ...

のように使えるしな。PerlはCからこれを引き継いだだけ。
360仕様書無しさん:2009/01/07(水) 21:12:28
>>352
351と352はかなり違うだろ。
評価結果を真偽判定に利用する場合は同じだけど。
361仕様書無しさん:2009/01/07(水) 21:33:04
351の書き方は、難しくは無いが珍しいと思われ。
362仕様書無しさん:2009/01/08(木) 07:13:56
>>360
同じだべ?&&の定義参照。
363仕様書無しさん:2009/01/08(木) 09:06:28
>>362
Cの話でいいんだよな?
p->foo()の戻り値がintでない場合、?:演算子の
戻り値はその型になるだろ。
ところが&&だったらかならずint。
364仕様書無しさん:2009/01/17(土) 05:32:45
>>363
bool じゃなきゃ駄目だろ、>>360 が書いた通りだよ
365仕様書無しさん:2009/01/17(土) 14:27:57
Cでboolだってwww
366葉猫 ◆Jz.SaKuRaM :2009/01/18(日) 13:35:01
つ _Bool
367仕様書無しさん:2009/01/18(日) 13:46:44
>>365
なんかおかしいか?
368仕様書無しさん:2009/01/18(日) 14:22:50
このアホコテまだ生きてたのか
369仕様書無しさん:2009/01/22(木) 17:51:43
>>367
カスは死んだら?
370仕様書無しさん:2009/04/10(金) 14:23:30
int foo(void){return 2;}

struct MyStruct{
int(*foo)()
};

struct MyStruct t, *p;
t.foo = foo;
p = &t;

のように定義されてるとき、
p?p->foo():0は2
p && p->foo()は1
になるはず。
(Cにおいて、真偽値を返す演算子は真のとき1, 偽のとき0を返す)
371仕様書無しさん:2009/06/29(月) 02:03:10
超亀なので書くのも気が引けるが
p && p->foo();
って、pが0のときp->foo()ですっ飛ぶだろ
372仕様書無しさん:2009/06/29(月) 02:52:19
>>371
短絡評価って知ってる?
373仕様書無しさん:2009/06/29(月) 04:09:40
>超亀なので書くのも気が引けるが

別の意味でやめておくべきだったな。
374仕様書無しさん:2009/06/29(月) 11:13:03
>>371
アイタタタタ・・・・
375仕様書無しさん:2009/06/29(月) 13:33:39
昔、言語仕様とかコンパイラオプションとか壮大な議論になったような記憶がないでもない
376仕様書無しさん:2009/06/29(月) 21:24:09
放置スレなのに突っ込み早いな
短絡評価って名前は知らなかった。
しかも&&は右から評価すると思ってた。
やべー
377仕様書無しさん:2009/06/29(月) 23:08:12
msのコンパイラは右から、
gccとかは左から。

だっけ?
VBは問答無用だけどな。
378仕様書無しさん:2009/06/30(火) 00:03:36
それが本当だとしたらおそろしい規格の無視だな。
379仕様書無しさん:2009/06/30(火) 06:12:33
演算子の評価純度と、
関数の引数の評価順序を
ごっちゃにしちゃう奴っているよね
380仕様書無しさん:2009/06/30(火) 19:07:43
>>379
それだったらごっちゃでおk。w

評価順とか結合規則とか優先順位とか、
ごっちゃにしちゃう奴っているよね。

381仕様書無しさん:2009/06/30(火) 19:19:23
ていうか、Cの演算子のなかで && と || が特別。
382仕様書無しさん:2009/07/01(水) 18:17:01
>>381
つ ?:
383仕様書無しさん:2010/05/07(金) 17:58:08
C++だと論理演算子やビット演算子を上書きできてデフォルトの演算子の優先順が適用されない罠があるけどな。
こういうのがC++の嫌われる一因だ。
384仕様書無しさん:2010/05/07(金) 20:25:51
ラベルとgotoを使うのが一番スマートだと思うのだが。
gotoは絶対に使っちゃ行けない教の人でなければ。
385仕様書無しさん:2010/05/07(金) 20:49:34
>>383
それは優先順じゃなくて短絡評価と言う
386仕様書無しさん:2010/05/08(土) 00:47:55
public static void main(String[] args) {
try {
main(null);
} catch (StackOverflowError e) {
main(null);
}
}
387仕様書無しさん:2010/05/08(土) 22:33:49
三項演算子、よく使うなぁ。

int i = 0;
if (ex == 0)
{
i = 100;
}
else
{
i = 1000;
}

って書くと、どこかでiが0の可能性があるのかな?、と心にひっかかる。

int i = (ex == 0) ? 100 : 1000;
これだとiは100か1000しか入らないという安心感がある。個人的に。
みんな口にはしてないけど見辛いのかなぁ。
388仕様書無しさん:2010/05/09(日) 09:12:56
じゃあこう書けばいいじゃない。
int i = 100;
if(ex) i = 1000;
389仕様書無しさん:2010/05/09(日) 11:40:57
というか 387 は代入した 0 が使われていないと警告が出るだろ。
i を宣言時に初期化しなければ、その不安は発生せず、未初期化で使われていないかコンパイラの警告をチェックすれば済む。
まあ俺は i を const で宣言して三項演算子使うけどね。

> みんな口にはしてないけど見辛いのかなぁ。
意味不明。
390仕様書無しさん:2010/05/09(日) 13:10:46
constは使うな。
391仕様書無しさん:2010/05/10(月) 18:09:22
>>388
確かにそういうなんだけど、そう書けない場合もあって。

class base {};
class A : public base {};
class B : public base {};

base p = (ex == 0) ? new A() : new B();

みたいな。
まぁ使いたくないワケじゃなく、容認してもらいたいだけなんだ。
ただ、どうしても使ってはいけない理由みたいのがあるなら
自粛しなきゃなぁという気持ち。
392仕様書無しさん:2010/05/12(水) 10:13:22
while('-')

for(;;)派だけどな
393仕様書無しさん:2010/06/06(日) 22:20:59
while(0==0)
394 忍法帖【Lv=9,xxxP】 :2011/04/30(土) 00:25:55.80
while(true)
だけどあんまりループは使わんな
395仕様書無しさん:2011/05/19(木) 21:51:10.74
for(;;)のほうが早いんじゃないの?
396仕様書無しさん:2011/05/20(金) 08:40:15.74
今時のコンパイラなら間違いなく同じコードを吐く、はず。
397仕様書無しさん:2011/05/20(金) 11:12:58.30
warning C4127: 条件式が定数です。
が出た
398仕様書無しさん:2011/06/26(日) 05:20:12.59
もし、真が0の環境があったらと考えると、for(;;)の方が落ち着く。
あとwhileで!0じゃなく、1と書かれるのがなんか嫌。
5000だろうが0以外なら何使ってもいいのに。
399仕様書無しさん:2011/06/26(日) 08:29:48.02
それは規格的に、C言語ではありませんが。
400仕様書無しさん:2012/03/17(土) 08:10:07.23
while(!0x0)
401仕様書無しさん:2012/04/15(日) 04:47:33.34
while(1)ってpointer->memberを
pointer[0].memberって書いてるのと同じ感じでキモイ
402仕様書無しさん:2013/05/05(日) 13:51:06.96
while (0==0)
403仕様書無しさん
いつだったかマ板のどっかのスレで
for(;;)を使って首吊りAA書いたのがいたっけな