bool flag2 = (flag==true); if(flag2==true) { } ここまでやれば完璧。誰が読んでも明白。
>>951 バカか。
if(flg==true)
と書いたって実行しなきゃわからんだろ。
#define flag true
>>953 実行しないで(ぱっと見るだけで)分かるのはflagの型。
>>952 それは結局。if(flag==true)と同じなんだけど...
>>955 見るだけで何がわかるんだよ。
flgは真偽しか返さないのにいったい他に何がわかるんだ。
>>957 flagの型って書いてあるだろ。まあコーディング規約でflagは真偽しか
返さないと決めてあるのなら別だが。
if(flag)//flag is true or false kanpeci
>>958 どうしても型が知りたいっていうなら別だが・・・
型を知ってどうするんだ?
そこで型がわかったところで意味ないと思うんだが。
#define isTrue(x) x!=0
if(flag)より if(flag==true) の方が可読性で勝ると思ってる奴は初心者。
ふむ。
gcc version 2.95.4 #include <stdio.h> #define N 4 int main(void) { int j; char a[N] = ""; for (j=0;j<N;j++) printf("%d ", (int)a[j]); return 0; } $ ./a.out 0 37 100 32 なんかゴミが入るんだよなぁ。 c99 6.7.8 12 If there are fewer initializers in a brace-enclosed list than there are elements or members of an aggregate, or fewer characters in string literal used to initialize an array of known size than there are elements in the array, the remainder of the aggregate shall be initialized implicitly the same as objects that have static storage duration.
a. 明日雨が降ったら、遊びに行くよ。 b. 明日雨が降ったら、が真なら、遊びに行くよ。
>>963 反論できないから初心者ということにして誤魔化すことしかできない程度
>>966 a. 旗だったら、遊びに行くよ。
b. 旗が立ったら、遊びに行くよ。
要はflagがbool変数かどうかを知りたいってこったな。 つまりそれがC99で書かれていることが読み取れるわけだ。 (´_ゝ`)ふーん
>>968 えらく自分の都合のいいように解釈してるな(w
>>970 そう解釈できるのだから間違ってないだろ。
>>969 自分で何を言っているか分かっていますか?
ずいぶん新着レス数多いなと思ったら・・・・香ばしいな
>>973 型が知りたいんだからそういうことだろ。
flag の型が知りたいから if ( flag == true ) とするってならこんどは (flag == true) の型を知るために if ( (flag == true) == true ) こうしなければならない。さらに ((flag == true) == true) の型を知るために(略
bool型があるならまだいいけど無いならあんまり必要性感じないなぁ<true比較
C99じゃないならflagの型を知りたいと言ってもintの可能性があるんだろ? じゃあ型がわかったことにならないんじゃ。
むしろ int flg; とかやってるのに if(flg == true) を見ただけで「flgには0か1しか入っていないはず!」と勘違いする可能性が… でも実はflg=5;とかできちゃうわけで。
よし。
if(!!flag == true)
これなら一石二鳥だ。
>>972 面白いね。
> C言語のことは漏れに聞け!char *c[42];
この辺まで考えてるとは。
>>982 ちょっとわかりにくいタイトルかなとは思ったんだけど、配列のインデックスが0から始まるC
だとちょうどタイトルの番号と過去スレの番号が収まっていいかなと
>>981 intとboolを比較したら普通はエラーだろ?
>>978 if(flag)だけだとflagが真偽値であるか明確ではない。
if(flag==true)だとflag真偽値であるのが明確。
if((flag==true)==true)は既にflagが真偽値であるのが明確なので無意味。
flagなんていう抽象的な名前で考えるから分らない。 たとえば具体的に int error_occurred; のとき if (error_occurred == true) なんて書いてたらただのDQNだろ。
>>942 なぜ
if (((flag == true) == true) == true)
と書かないのかと小一時間…
988 :
デフォルトの名無しさん :02/11/13 01:15
ユーザーが指定した数をカウントする関数作り i2=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]); }
あのーC99より前のCにtrueやfalseという予約語ありませんよね?
>>987 だから足りない情報(boolであるか)は一つ目のtrueで補えているから二つ目以降は必要ないだろ。
>>985 if ( flag == true )
だと flag が真偽値であることは明確だが
(flag == true) が真偽値であることは明確ではない。
次はあのスレ行かなきゃダメなのか・・・鬱
>>991 (flag==true)は真偽値を返すことになっているはずだが。
このユーザーが、指定した数をカウントする関数を教えて・・・・
まもなくここは 乂1000取り合戦場乂 となります。 \∧_ヘ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ,,、,、,,, / \〇ノゝ∩ < 1000取り合戦、いくぞゴルァ!! ,,、,、,,, /三√ ゚Д゚) / \____________ ,,、,、,,, /三/| ゚U゚|\ ,,、,、,,, ,,、,、,,, ,,、,、,,, U (:::::::::::) ,,、,、,,, \オーーーーーーーッ!!/ //三/|三|\ ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧ ∪ ∪ ( ) ( ) ( ) ) ,,、,、,,, ,,、,、,,, ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧ ,,、,、,,, ( ) ( ) ( ) ( )
if ( DQN ) abone(); もし DQN なら あぼーん if ( DQN == true ) abone(); もし DQN が 真 なら あぼーん
>>983 今回はもう手遅れっぽいけど、次のスレでは
是非この案を採用して欲しいと願ふ。
おしえて
>>1001 んなこた〜わかってんだよ。いちいちウザイぞボケ。
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。