C言語の質問スレッド<42>
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG問題をちゃんと切り分けて、Cの話かそうでないか洗ってから質問してくれ。
というより、聞く前に一応 Web で検索しろ。
コンパイラを探してるなら >>2 を見ろ。
過去ログ(DAT落ちあり)なら>>3-100あたりにあるかも。
GUIとか、C標準でできない事の質問は使ってる開発環境のスレに逝ってくれ。
ソース丸投げ、宿題、書籍 は専門の別スレがあるからそこへ逝ってくれ。
未定義・処理系依存ネタはご遠慮ください。
誰かが(故意にではなく)それらの書き込みをしても、いちいち突っ込まないでください。
規格オタクはこのスレッドには必要ありません。論争したかったら独自にスレッドを立ててそこでやってください。
C FAQ 日本語訳
http://www.catnet.ne.jp/kouno/c_faq/c_faq.html
comp.lang.c FAQ(英語の原文)
http://www.eskimo.com/~scs/C-faq/top.html
Cプログラマ必読 ・プログラミング言語C(通称 K&R)
http://www.amazon.co.jp/exec/obidos/ASIN/4320026926/
推薦図書/必読書のためのスレッド PART6
http://pc3.2ch.net/test/read.cgi/tech/1033207156/
前スレ <41>
http://pc3.2ch.net/test/read.cgi/tech/1036876790/
0075デフォルトの名無しさん
NGNGC使いが他の言語を知っていることを証明するためです。
007632
NGNGi2=3;
j2=4;
ij=i2*j2;
if((str1=(int**)malloc(sizeof(int*)*i2))==NULL){
printf("メモリー確保の失敗:1");
exit(1);
}
for(i1=0;i1<i2;i1++)
if((str1[i1]=(int*)malloc(sizeof(int)*j2))==NULL){
printf("メモリー確保の失敗:2");
exit(1);
}
for(i1=0;i1<ij;i1+=j2){
putchar('\n');
for(j1=0;j1<j2;j1++){
printf("%c",str1[i1/j2][(len++)%i2]=('A'+i1+j1));
}
}
putchar('\n');
for(i1=0;i1<i2;i1++){
putchar('\n');
for(j1=0;j1<j2;j1++)
printf("%3d",str1[i1][j1]);
}
0077デフォルトの名無しさん
NGNG(if flag <then節> <else節>)
(if (eq flag true) ...) なんて書くやつぁDQN
ML では
if flag then <then節> else <else節>;
if flag = true then .. なんて書くやつはDQN
0078デフォルトの名無しさん
NGNGたいていの言語では、
0 - 偽
それ以外 - 真
と評価されます。
0079デフォルトの名無しさん
NGNGif(flag)
これは良いんだが(というかしょうがない)
if(!flag)これも併用すると複雑な式の中で'!'を見逃す可能性があるから
if(flag == FALSE)と明示した方が良いと思うが。
if(!*s)やif(!s)では意味が違う訳だろ?
簡潔だが見間違いが起こりやすい。
if(*s == '\0')
if(s == NULL)
これなら明解だろ。
0080デフォルトの名無しさん
NGNGネタは他いけ。
008132
NGNG0082デフォルトの名無しさん
NGNGそれは誰も問題にしてない。
前提は>>55
0083デフォルトの名無しさん
NGNGそのソースを愚弄したんじゃなくて、意味不明な質問を注意したんでしょ?
0084デフォルトの名無しさん
NGNGおまえのいう「たいていの言語」ってなんだよ?(ワラ
0085デフォルトの名無しさん
NGNG0086デフォルトの名無しさん
NGNGCスレなんだからCの話すればいいじゃんよ・・・
0087デフォルトの名無しさん
NGNG無知だな(藁
0088デフォルトの名無しさん
NGNGさっきから挙動不審なんだけど?
0089デフォルトの名無しさん
NGNG他の言語ならその言語らしいプログラムを書く。
これじゃだめなのか?統一しないとだめなのか?
0090デフォルトの名無しさん
NGNGしかしスレ違いでまた叩かれる罠
0091デフォルトの名無しさん
NGNGだからif (flag == true)なんて書くアフォはいない。
0092デフォルトの名無しさん
NGNG0093デフォルトの名無しさん
NGNGおまえは無知かつ無恥だな(W
009432
NGNGなお、printf("%3c",str1[i1][j1]);修正したぞ
ABCD
EFGH
IJKL
D B C ヘ
G H F ヘ
J K L ヘ
0095デフォルトの名無しさん
NGNG無意味なことをしているという点では同じだろ。
0096デフォルトの名無しさん
NGNG0097デフォルトの名無しさん
NGNGif (flag == FALSE){
}
else{
/* 処理 */
}
0098デフォルトの名無しさん
NGNG目的を明確にしないと分からないんだってばー
0099デフォルトの名無しさん
NGNGへー。Javaはifではboolean型しか書けないのか不便だな(w
0100デフォルトの名無しさん
NGNGうひょーーー!とんでもないあふぉ発生!
0101デフォルトの名無しさん
NGNGif (flag == true)は単に冗長で無駄で見にくいだけ。
もしflagがtrueやfalse以外もとるなら、
if (flag == true)で真偽をテストするのは単なる間違い。
0102デフォルトの名無しさん
NGNGこれ以上醜態を晒すな
0103デフォルトの名無しさん
NGNGそんなのむだ。
if (flag){
/* 処理 */
}
else{
}
でいい。
0104デフォルトの名無しさん
NGNG0105デフォルトの名無しさん
NGNGこれだから C 言語しかしらないやつは.......
0106デフォルトの名無しさん
NGNG実はもうこの話題は終了してる罠。
0107デフォルトの名無しさん
NGNGそれをやるとif(flag == true)の方がと言い出す奴がいるから
>>97のように書いたんだが。
0108デフォルトの名無しさん
NGNGバグはめったに起きない。
起きるとしたら普段if (flag == true)と書いてるアフォが
if (flag = true)としちゃったときだけ。
0109デフォルトの名無しさん
NGNG結局ifの中にbool以外を書けるC言語の仕様が糞ということでしょ。
011032
NGNGをつくるのが目的なんだよ。
for(i1=0;i1<ij;i1+=j2){
putchar('\n');
for(j1=0;j1<j2;j1++){
printf("%c",str1[i1/j2][(len++)%i2]=('A'+i1+j1));
}
}
for(i1=0;i1<i2;i1++)
for(j1=0;j1<j2;J1++)
str[i1][j1]=i1+j1ではカウントできなでしょ。
色々、試していくうちにこう言う形になったんだよ。
0111デフォルトの名無しさん
NGNG0113デフォルトの名無しさん
NGNG> 起きるとしたら普段if (flag == true)と書いてるアフォが
> if (flag = true)としちゃったときだけ。
それってJavaの話だよね。そんなことって出来たっけ?
0114デフォルトの名無しさん
NGNG( ゚Д゚) ポカーン……
0115デフォルトの名無しさん
NGNG0116デフォルトの名無しさん
NGNGbool以外を書けたほうが便利だろ。
0117デフォルトの名無しさん
NGNGってのが具体的に何をすることなのかよく分からない。
0118デフォルトの名無しさん
NGNG>>32 は こ の 先 放 置 で お な が い し ま す
0119デフォルトの名無しさん
NGNG他の話題きぼんぬ。
0120デフォルトの名無しさん
NGNGだから、具体的にどんなときだよ
ってこれ昨日もでたネタだな
0121デフォルトの名無しさん
NGNG単に !=0 が省けるだけやん。
そのおかげでどれだけみんな苦労してるか。
0122デフォルトの名無しさん
NGNGCの実装が楽になる。
0123デフォルトの名無しさん
NGNG苦労するほどのものか?
0124デフォルトの名無しさん
NGNG同じ処理をするならソースは短い方が無条件に(・∀・)イイ!!
0125デフォルトの名無しさん
NGNGC の実装?????????????????????
0126デフォルトの名無しさん
NGNG釣 ら れ る な
012732
NGNG配列の格納にABC
DEF
GHIのようにカウントできたらいいなと思ったんです。
C言語は、人によって色々記述がかわってくる。 それが、
特徴であるはず。 まあ、わかりやすいはべつだが。
つまり、めんどくさかったんです。strcpy(str[i],"ABC");のように
するのが。 今はint型だけど、最終的にはchar型にも
使えるようになったらなと思って作ったのよ。
0128デフォルトの名無しさん
NGNGやっぱりな(ワラ
0129デフォルトの名無しさん
NGNG俺の場合は判定はエラー捕獲が多いから
if(flag == NULL){
/*エラー処理1*/
} else if(flag2 == NULL) {
/*エラー処理2*/
} else {
/* 通常処理 */
}
と書く時が多いな。最後のelseを省略すると更に簡潔になる。
因みに同じ事をTRUE判定でやろうとすると,
if(flag) {
if (flag2) {
/* 通常処理 */
} else {
/* エラー処理2 */
}
} else {
/*エラー処理 */
}
ネストができ、elseも取り除けない。
「プログラム作法」で学んだ。
0130デフォルトの名無しさん
NGNG== と = を取り違えるバグが99%くらい
無くなるだろうが。
0131デフォルトの名無しさん
NGNG7行スレへカエレ!
0132デフォルトの名無しさん
NGNGアルコール? クスリ? ビョーキ?
0133129
NGNGだった、失礼。
0134デフォルトの名無しさん
NGNGflagにポインタ入れんなよT_T)
0135デフォルトの名無しさん
NGNGまじか?
if ( !flag )
で解決だと思うんだが
0136デフォルトの名無しさん
NGNGカウントって数えるという意味で使っているよな?
0137デフォルトの名無しさん
NGNG0138デフォルトの名無しさん
NGNG0139デフォルトの名無しさん
NGNGなぜNULLなんてものを使う? これでいいだろ。
if(!flag){
/*エラー処理1*/
} else if(!flag2) {
/*エラー処理2*/
} else {
/* 通常処理 */
}
0140デフォルトの名無しさん
NGNGでもそれ警告してくれるじゃん
0142デフォルトの名無しさん
NGNGスタイル論争は不毛だからやめてクレヨン。
0143デフォルトの名無しさん
NGNG誰が見ても理解不能。ちゃんと説明シレ。
0144デフォルトの名無しさん
NGNG>> if (flag = true)としちゃったときだけ。
>それってJavaの話だよね。そんなことって出来たっけ?
できるよ。
0145デフォルトの名無しさん
NGNGflag==FALSEは
flagがFALSEな時は特別な場合でそれを強く明示できる効果がある。
別に!でも悪くは無いが。
上に書いてあったがif(!s),if(!*s)のようなケアレスミスも起こりやすい。
(起こす方がバカと言うのは無しね。)
0146デフォルトの名無しさん
NGNG毎回警告に従うくらいならエラーの方が良い。
0147デフォルトの名無しさん
NGNGフォントが小さいのでは?
0148デフォルトの名無しさん
NGNGこういうのは gcc では -Wall しても警告してくれないね
0149デフォルトの名無しさん
NGNGあーーーー!!
もしかして配列の添え字に文字列を使いたいとか思っている?
Perlなどでお馴染みの連想配列のように。
0150デフォルトの名無しさん
NGNG0151149
NGNG0153デフォルトの名無しさん
NGNG慣れだと思う。
0154デフォルトの名無しさん
NGNGそうだっけか。それが出来ないのはC#だっけ?
0155デフォルトの名無しさん
NGNG*p++ = *q++ も警告してほしいか?
コンパイラに、=が正しいか==が正しいか区別できるか?
(人間でもぱっと見 まようけどなー)
0156デフォルトの名無しさん
NGNG0158デフォルトの名無しさん
NGNGだれにレス?
0160109
NGNG0161デフォルトの名無しさん
NGNGああおれか、
警告出して欲しくないのは括弧でくくってる。
0162デフォルトの名無しさん
NGNG4:主観で決め付ける
147 :デフォルトの名無しさん:02/11/13 02:24
!sがなぜミスを起こしやすいのか分らんが...
フォントが小さいのでは?
0163デフォルトの名無しさん
NGNG0164デフォルトの名無しさん
NGNG議論に負けると必ずそれ出すやついるけど、同一人物か?
0165デフォルトの名無しさん
NGNGうん。そうするくらいなら
(*p++ == *q++)と
(*p++ = *q++) != 0と
書き分ければよいだろう?
(*p++ = *q++)と書ける便利さが、
これをエラーにしてくれるときの安全さを
上回るか?というと疑問だと思う。
0166デフォルトの名無しさん
NGNGこれって決めつけだったのか。
0168デフォルトの名無しさん
NGNGint a;
printf("整数を入力しる:");
scanf("%d",&a);
printf("入力された値は %d ですが何か?",a);
っでカウントしたことにならんのか?
0169デフォルトの名無しさん
NGNGそれもかなり偏った…
0170デフォルトの名無しさん
NGNG0171デフォルトの名無しさん
NGNGネタはもういいって。
0172デフォルトの名無しさん
NGNG0173デフォルトの名無しさん
NGNG7:的を射たことを言われると「ネタはもういい。」と言う。
0174デフォルトの名無しさん
NGNG4:主観で決め付ける
!sがミスを起こしやすいってのは主観的だよね。
それもかなり偏った…
■ このスレッドは過去ログ倉庫に格納されています