C言語ですがfor文とwhile文って・・・。
■ このスレッドは過去ログ倉庫に格納されています
0001
NGNG一般参考書などではfor文から記載していて学校の先生なんかも
for文から教えています。
でも俺はwhile文からfor文にした方が分かり易いんです。
みなさんどうですか?こんな俺はC歴3ヶ月です。
0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNGだがクソスレ立て1は氏ね。
0004デフォルトの名無しさん
NGNGfor文の方がお約束が多くてめんどくさいのは確かだけど
歴史的なもんだと思って諦めるしか
0005デフォルトの名無しさん
NGNGifとgotoがあれば事は足りる。
0006デフォルトの名無しさん
NGNG日本語の助詞の「が」と「は」はどちらがマイナーですか?
英語の前置詞の"on"と"in"はどちらがメジャーですか?
0007デフォルトの名無しさん
NGNGそれはチト的外れかと
forやwhileは書き方次第で無理やり相互に(まーif、gotoでもいいけど)書き換えることが可能だが
が、は、on、inでは無理でしょ
0008デフォルトの名無しさん
NGNG0009デフォルトの名無しさん
NGNGfor(int i = 0; i < n; i++)
以外にforを使ったことがない。
上のより複雑になる場合はwhile使う。
0010デフォルトの名無しさん
NGNGfor( char *p = strtok(str, ','); p; p = strtok(NULL, ',') )トカ
for( char *p = str; *p; p++) トカ
0011デフォルトの名無しさん
NGNG}
while(hogehoge){
}
0012デフォルトの名無しさん
NGNGint T_T=1;
while(T_T) ;
0013デフォルトの名無しさん
NGNGwhile()覚えればfor()覚える必要無し
0014デフォルトの名無しさん
NGNGざけんなゴルァ!
0015デフォルトの名無しさん
NGNGC言語なら、俺に聞け! <19>
http://pc.2ch.net/test/read.cgi/tech/1020756993/
0016デフォルトの名無しさん
NGNG0017デフォルトの名無しさん
NGNG非国民
0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNGネタと分かりきっているが、一応聞いてやる。
何が変なんだ?
0020デフォルトの名無しさん
NGNG↑丸括弧の中に;が入ってるのが変
といってみる。
0021デフォルトの名無しさん
NGNGだよなぁ。
0022デフォルトの名無しさん
NGNGforも悲しんでいるので、許してやってください。
0023デフォルトの名無しさん
NGNGfor(i = 0, j = 0; i < 10; i++, j++){
}
普通一つの文はセミコロンで終わるのに、forの中ではカンマで終わる
ことがある。
この辺がキモチワルイ。
0024デフォルトの名無しさん
NGNGどっちかなあ(笑)。
多分、BASICやFORTRANから入った人は while がマイナーだと思う。
おいらも当初は while を使えなかった。
しかしそれよりも、do { } while の方がマイナーと思われるが、どうか?(^^;
0025デフォルトの名無しさん
NGNG・goto label;
・do;while();
・while();
・for(;;);
の順番でやるのが正しいと思う、
ただfor教えちゃえば他のは適当に出来るから、便宜的にforを先に教えてるんだと思われ
0026デフォルトの名無しさん
NGNG0027デフォルトの名無しさん
NGNGdo{
}while(--n);
do{}while();大好き♪
コンパイラがプア―なときには最速!
0028棄教者 ◆witdLTi2
NGNGfor( ; 式 ; ) ステートメント
上と下は同じ動作をする?
0029デフォルトの名無しさん
NGNG>>16みたいなマヌケは一生for文使わんでよし。
0030デフォルトの名無しさん
NGNGC系言語の式について勉強しなおすべき。
>28
同じ
0031デフォルトの名無しさん
NGNGの後にiを参照したいときって頭こんがらかりません?
0032デフォルトの名無しさん
NGNG0033デフォルトの名無しさん
NGNG0034デフォルトの名無しさん
NGNG思わずワラタ
0036棄教者 ◆witdLTi2
NGNGどんなときもどんなときもfor,while,do-whileを使わないでgotoでハックし続けたら
あなたのことを神と呼びます。
0037棄教者 ◆witdLTi2
NGNG0038デフォルトの名無しさん
NGNGマイナーだったら使わない気なのだろうか。
0039デフォルトの名無しさん
NGNGageるにしろsageるにしろ
お前の書き込みが面白かったことって一度もないよ。
0040デフォルトの七資産 ◆N88lfDGw
NGNGCはforが強力すぎるし。
0041デフォルトの名無しさん
NGNG0042デフォルトの名無しさん
NGNGいきなりCなんて・・・せっかちさん(はぁと)
0043デフォルトの名無しさん
NGNG0044デフォルトの名無しさん
NGNGfor(;;);
int T_T = 1;
while(T_T);
0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNG0047デフォルトの名無しさん
NGNGif ififififif
goto if gotoifgotogoto
確かに、ifとgotoで2つの状態を表せるからコンピュータで扱える情報はすべて扱えるな。
逆に、これ以上の符号は無駄であると。なるほど。理にかなっている。
でも、これでプログラムを書けないことはないが死ぬほど非効率的。
0048デフォルトの名無しさん
NGNG0049棄教者 ◆witdLTi2
NGNGifとgotoを使って
10 i = 1
30 ....
40 i = i + 2
50 if( i <= 10 ) 後藤 10
0050デフォルトの名無しさん
NGNGadd EAX,2
cmp EAX,10
jle 後藤さん
0051デフォルトの名無しさん
NGNGfor(;_;)printf("うわーん\n");
0052goto嫌い
NGNG0053デフォルトの名無しさん
NGNG基本的にはそのスタンスで問題ない。
0054デフォルトの名無しさん
NGNGk&rの本(Cを作った奴の本)だと、whileから教えてる。
で、for を教えて、for は while でも実現できるよー。
って教えてる。forの方がwhileでやるよりエレガントに間違いが
少なく書けるみたいな感じで。
forは実際、whileのfor形を良く使うから for として定義したっぽい経緯がうかがえる。
0055デフォルトの名無しさん
NGNG0056デフォルトの名無しさん
NGNGあんた、遠足に酢昆布とか梅干しとか大量に持っていった口だろ?
0057デフォルトの名無しさん
NGNG0058デフォルトの名無しさん
NGNG>まともな
主観。
0059デフォルトの名無しさん
NGNG0060デフォルトの名無しさん
NGNGtry...catch() はどうよ?
0061デフォルトの名無しさん
NGNGlinux板住人との戦争がはじまったYO
0062デフォルトの名無しさん
NGNGなにそれ?
0063デフォルトの名無しさん
NGNGまじっすか、>>60もいまいちよく分からんし。
>>59
んじゃ、君はgoto使わないとまともに書けないのかと(略)
006460
NGNG構造化例外処理じゃ
006562
NGNGなんの言語だよ!!
0066デフォルトの名無しさん
NGNGCで例外時に敢えてgoto使うのは常套手段だろ。
0067デフォルトの名無しさん
NGNGもしかC++だけかも...スンマソ
0068デフォルトの名無しさん
NGNGCって良くも悪くもそんなに高級じゃない。
0069デフォルトの名無しさん
NGNG0070デフォルトの名無しさん
NGNGそれ以外に利用例を聞かないな。
いっそallbreakみたいなのを作れば良かったね。
0071デフォルトの名無しさん
NGNGこれ俺だけど
0072名無しさん@カラアゲうまうま
NGNG途中まで抜けたいときに困るだろう。
どっちかといえばPerlみたいにブロックにラベルをつけるとか。
0073デフォルトの名無しさん
NGNG0074デフォルトの名無しさん
NGNGというスタイルを見たときは感動とともに目から鱗が落ちた。
0075デフォルトの名無しさん
NGNGそんなないと思うんだけど…。
0076デフォルトの名無しさん
NGNGじゃあ例外見たときは万々歳でしょ。
ONERRORGOTOの欠点がすべて解消されてて。
0077デフォルトの名無しさん
NGNGある。
0078デフォルトの名無しさん
NGNGFF風にw
breakga(3);
ループ3つ抜ける。
みたいなw
0079デフォルトの名無しさん
NGNG0080デフォルトの名無しさん
NGNGC++限定だけど。
0081デフォルトの名無しさん
NGNGやだ。名前の方がわかりやすい。
008274
NGNGいや、(C++の)例外は知ってたけど使い方とかいまいちぴんとこなかった時に
>>74のコード見て悟った。
あ、もちろんgotoと例外の違いは理解してるよ。
0083名無しさん@カラアゲうまうま
NGNGネスト数えんのはイヤ。
0084デフォルトの名無しさん
NGNG0085デフォルトの名無しさん
NGNG後置評価。
0086デフォルトの名無しさん
NGNG0087デフォルトの名無しさん
NGNGC++に慣れてる漏れには非常に違和感を覚えるよ
0088デフォルトの名無しさん
NGNGwhile(File.read())
{
}
for(;File.read();)
{
}
にすりゃ言いじゃんって言うのはナンセンスかと。
0089デフォルトの名無しさん
NGNGdo{}while();?
0090デフォルトの名無しさん
NGNGtry{
hoge();
} catch(const char* s) {
printf(s);
}
}
void hoge(void) {
throw "エラーだゴルァ!!!";
}
0091デフォルトの名無しさん
NGNG0092デフォルトの名無しさん
NGNGアセンブラは?大抵JUMPっていうけど。
0093デフォルトの名無しさん
NGNGナンセンスになっちゃうかー(w
0094デフォルトの名無しさん
NGNG自分に使う能力が無いとはっきり言えよ。
0095デフォルトの名無しさん
NGNG0096デフォルトの名無しさん
NGNG0097デフォルトの名無しさん
NGNG{
}
こんなの書く人は変人だな
0098デフォルトの名無しさん
NGNGそのエラー時には全て同じ処理をする場合どうする?
1.同じ処理を書く
2.関数にする
3.gotoを使う
4.質問が良くわかりませんがなにか?
0099デフォルトの名無しさん
NGNG0100デフォルトの名無しさん
NGNG同様に
i=0;
while(i<10){
/* なにかやる */
i++;
}
もな。場合によってうまく書ける方を使えばよいとおもう。
0101デフォルトの名無しさん
NGNGfor(int i = 0;i < 10;i++)
がデキルのは十分メリットだと胸を張って言えるけどね。
0102デフォルトの名無しさん
NGNGフラグ立てる。
0103デフォルトの名無しさん
NGNG>場合によってうまく書ける方を使えばよいとおもう。
それを逝ったらイカンザキ
0104デフォルトの名無しさん
NGNG5,質問の意味はわかるが低能な俺には解決法が思い浮かばない。
0105デフォルトの名無しさん
NGNGC言語だと仮定して。
関数内で確保したリソースの開放なんかを考えると、3.が楽でいいと思うがどうか?
C++だとデストラクタに任せられるけどな。
0106デフォルトの名無しさん
NGNGプログラムってことは様々な関数の中に同じエラー処理をするべき検知場所があるんだよね?
0107デフォルトの名無しさん
NGNGCじゃできなかったのか…変数宣言は最初だもんな…
つーかVCが標準に準処してないから(正確には違う)
{for(int c; c < 10; c++){
}}
とか書くけどどうよ。
0108デフォルトの名無しさん
NGNGいや一つの関数限定&C限定。
0109デフォルトの名無しさん
NGNGじゃあgoto。
0110デフォルトの名無しさん
NGNGブロックの最初だっけ?
って言うかあのint iのスコープはforのブロック内でいいの?
0111デフォルトの名無しさん
NGNG0112デフォルトの名無しさん
NGNG{int c;
for(c = ?;c < 10;c++){
...
}
}
でないかい?
0113デフォルトの名無しさん
NGNG何箇所(3箇所以上)かあって、
そのブロックが十行以上なら、多分俺は関数にする。
0114デフォルトの名無しさん
NGNGいや、漏れC++厨だから、Cに準処させない(藁
pascalみたいな構文ならともかくな〜
0115デフォルトの名無しさん
NGNG0116デフォルトの名無しさん
NGNGsetjmpが面倒。jmp_bufを広域変数にしないといけないし(関数の引数にするとか言うなよ)・・
0117デフォルトの名無しさん
NGNGint x;
int y;
char *z;
{...}
萌え〜
0118デフォルトの名無しさん
NGNG最近のコンパイラではとおらない罠
0119デフォルトの名無しさん
NGNG0120117
NGNG0121デフォルトの名無しさん
NGNGあんたも不治痛と書くのか。奇遇だな。
0123名無しさん@カラアゲうまうま
NGNG通るだろ、Cコンパイラなら。
0124デフォルトの名無しさん
NGNG0125デフォルトの名無しさん
NGNGgccでこけました
0126名無しさん@カラアゲうまうま
NGNG0127デフォルトの名無しさん
NGNG何もせずに通ったが。ちなみに2.96
0128デフォルトの名無しさん
NGNG0129デフォルトの名無しさん
NGNG0130デフォルトの名無しさん
NGNG-Wall で何も出なかったよん。
-ansi -pedantic -Wall でも何もなし。
0131lisp名無しさん
NGNG(男は再帰だろ。))
0132デフォルトの名無しさん
NGNGはっきり言ってスタック浪費のコストを考えるとバカらしい。
0133名無しさん@カラアゲうまうま
NGNG閉じてない
0134lisp名無しさん
NGNG(read-this 'http://www.shiro.dreamhost.com/scheme/docs/tailcall-j.html)
;;>>131
(sumaso)
)
■ このスレッドは過去ログ倉庫に格納されています