トップページ⇒tech
1001コメント240KB

C言語の質問スレッド<42>

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
C言語に関する質問はここでしてください。

問題をちゃんと切り分けて、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/
017532NGNG
>>168 ならないのです。 あくまでも、カウントって
 count++;みいたいに、1,2,3,4,5,6←これが、カウントだ。
  まあ、こんな簡単なんじゃないけどね。
   ようは、for文を使った簡潔な記述をしたいわけ。
0176デフォルトの名無しさんNGNG
>>171
ワラタ
0177デフォルトの名無しさんNGNG
>>32
まずは日本語の勉(ry
0178170 ( != 169) だが…NGNG
if(!flag)でいいだろ?
簡潔に逝こうよ…
0179デフォルトの名無しさんNGNG
C++で、
if(HOGE *p = get_hoge())
って書けるくせに
if(a = b)
の警告は、お節介。

C++で、
if(HOGE *p = get_hoge())
って書けるくせに
0180デフォルトの名無しさんNGNG
>>175
for(i=0;i<j;i++)
printf("%d,",i);

こんな感じじゃだめなのか?最後に,がついてしまうのは自分でなんとかしろ。
0181デフォルトの名無しさんNGNG
>>32
int main( void ) {
int i;
puts ( "好きな所で止めろ" );
getchar();
for ( i = 1; ; i++ ) printf ( "%d\n", i );
return 0;
}
018232NGNG
 うっせよ・・・>>177
  これの、どこが理解できない。
0183デフォルトの名無しさんNGNG
だからスタイルに答えなんかでないんだって・・・
0184デフォルトの名無しさんNGNG
>>173
詭弁ってのはもう少し上等だよ。
どこが間違ってるか一見わからないようなもの。

! s が読みにくいなんていう、一見してジョークと分るのは
ネタという。
0185デフォルトの名無しさんNGNG
>>173
煽りに堪えてよく煽り返した、感動した!
0186デフォルトの名無しさんNGNG
>>184
厨房のガイドラインの方がよかったか?(ワラ
0187デフォルトの名無しさんNGNG
>>32
おまえ、「たこくじら」だろ、マスターネットに居た。
0188デフォルトの名無しさんNGNG
煽りに堪えかねて煽り返したわけだが
0189デフォルトの名無しさんNGNG
>>186
同意
019032NGNG
 >>181 いやオもろいけど・・・。おもろいけど
  while(kbhit())関数使おうよそんなANSICに違反した書き方
 はいいから。
0191デフォルトの名無しさんNGNG
>>32はリアル厨房じゃねーの?
0192デフォルトの名無しさんNGNG
!が見にくい老眼の人は、
#define NOT !
とか、
#define IS_FALSE(x) (!(x))
とかしとくと良いと思う。
0193もまずにパピコNGNG
>>191
ひとりでままごとしてるんだからほっといてやれ
0194デフォルトの名無しさんNGNG
だれにでも分かりやすいスタイル
if(flag==FALSE)

そうでないスタイル
if(!flag)
0195デフォルトの名無しさんNGNG
>>194
まだいたの
0196デフォルトの名無しさんNGNG
>>190
ANSI Cに違反していないだろ。
ANSI Cの標準ライブラリにない関数を使っているだけで。
0197デフォルトの名無しさんNGNG
あー、コーディングスタイル論争うぜー
0198デフォルトの名無しさんNGNG
>>194
そのネタ飽きた。
0199デフォルトの名無しさんNGNG
人のソースもろくすっぽ読んだ事の無いアホな>>184が何か言ってますよ、Knuthさん。

0200デフォルトの名無しさんNGNG
ループ
0201デフォルトの名無しさんNGNG
>>197
あー、こーでぃんぐ すたいる ろん あらそうぜー
に見えた
0202デフォルトの名無しさんNGNG
>>194
そういう変わったスタイル押し付けるのはやめようぜ。
0203デフォルトの名無しさんNGNG
なんか今日はろくな話題がないな。
スレタイの伝統を破ったせいかな。
0204デフォルトの名無しさんNGNG
このネタで朝まで逝けそうだ(藁
0205デフォルトの名無しさんNGNG
>>203
伝統ならとっくに破られていたような・・・
0206デフォルトの名無しさんNGNG
>>203
「スタイルの伝統を破った」に見えた。
0207デフォルトの名無しさんNGNG
疲れてるんだよ。
0208デフォルトの名無しさんNGNG
11:レッテル貼りをする
192 :デフォルトの名無しさん:02/11/13 02:48
!が見にくい老眼の人は、
020932NGNG
 
  ∧_∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ´∀`)< >>1がド厨房。
 (    )  \_________
  | | |
 (__)_)
0210デフォルトの名無しさんNGNG
てか
if ( flag == FALSE )
がいいなんていってんのは独りだけだろ?
0211デフォルトの名無しさんNGNG
336: C言語の事訊いて!!!第.38支部 (1001) 
0212デフォルトの名無しさんNGNG
>>194
OK,わかった。
老眼の藻前に!sと書けとは言わんから、
その変態的スタイルを主張しつづけるのはやめろ。
0213デフォルトの名無しさんNGNG
今度は32が>>1をたたき出したぞ(稿
0214デフォルトの名無しさんNGNG
>>194必死だな(藁
0215デフォルトの名無しさんNGNG
見づらかったらフォント替えれ。
0216デフォルトの名無しさんNGNG
>>211
同一人物
0217デフォルトの名無しさんNGNG
>>210
俺以外に言っている奴がいることは確かだ。
0218デフォルトの名無しさんNGNG
そんなスタイルどっちでもいいって。
0219デフォルトの名無しさんNGNG
>>217
じゃあ二人か?
0220デフォルトの名無しさんNGNG
ばかばっか
0221デフォルトの名無しさんNGNG
>>220
オマモナー。
0222デフォルトの名無しさんNGNG
>>194
ひょっとしてチミは
if (isalpha(c) == FALSE)
と書くのか!?
0223デフォルトの名無しさんNGNG
if(!flag)
こんな書きかたするから見にくい
if ( !flag )
スペースを有効に使え
0224デフォルトの名無しさんNGNG
4:主観で決め付ける
210 :デフォルトの名無しさん:02/11/13 02:52
  てか
  if ( flag == FALSE )
  がいいなんていってんのは独りだけだろ?
0225デフォルトの名無しさんNGNG
>>222
んなセンスないことしたら、せっかくis...と名付けてるのが
だいなしじゃん。
0226デフォルトの名無しさんNGNG
>>224
いいかげんあきた
0227デフォルトの名無しさんNGNG
>>223
ふつー
if (! flag)
だろ。
022832NGNG
          ||
  ∧_∧     ||
 ミ,,・∀・ミ Λ_||_,,,
 (シ  つ(;;;。∀゚;.)   ∧_∧
@ミUノ  (:#," @  _(・∀・,∩ ヒィーヤッホウゥウ
      |,;.#;|';::.|⊂____つノ
      (__)_)
  __∧__________
/ ボロボロになってきたデチ

0229デフォルトの名無しさんNGNG
>>227
んなぁやつぁいねぇ
0230デフォルトの名無しさんNGNG
たしかに飽きた。
だからお前は勝手に==FALSE書いてろや。
一緒に仕事しない限り文句は言わん。
0231デフォルトの名無しさんNGNG
8:知能障害を起こす
226 :デフォルトの名無しさん:02/11/13 02:57
  >>224
  いいかげんあきた
0232デフォルトの名無しさんNGNG
>>229
K&RもGNUも>>227
0233デフォルトの名無しさんNGNG
>>232
K&R は知らんが GNU はクソ
0234デフォルトの名無しさんNGNG
>>223
括弧の内側に空白あけるのは典型的DQN
0235デフォルトの名無しさんNGNG
>>222
194じゃないけどisalpha(c)は日本語にすると「アルファベットか?(c)」だから==FALSEは書かない。
023632NGNG
 >>277 無能な>>1を、あの世に送ろうぜ・・・
0237デフォルトの名無しさんNGNG
>>233
お前は勝手に「俺スタイル」で書いてればいい。
だから、世の中の人々のスタイルに口を出すな。
0238デフォルトの名無しさんNGNG
つーかスタイル論争自体むだむだむだ
0239デフォルトの名無しさんNGNG
>>237
Linus たんが言ってたのよ〜
0240デフォルトの名無しさんNGNG
今日は一段と厨房レスばかりだな
0241デフォルトの名無しさんNGNG
>>235
だから!で良いんだろ?
0242デフォルトの名無しさんNGNG
>>240
さらに脳障害もいる。
0243デフォルトの名無しさんNGNG
昔は、if(hoge == FALSE)なんて書いたらアホコード吐いたんだよ。あほ。
0244デフォルトの名無しさんNGNG
あと、
return(x);
みたいに書くやつ。
関数と文の区別がついてないんじゃないか?
0245若造NGNG
>>243
どんな?
0246デフォルトの名無しさんNGNG
すべて1が悪い。
0247デフォルトの名無しさんNGNG
ダメだこりゃ
024832NGNG
>> 237 これの、どこが世の中に人々のスタイルなわけ。
 >>32
int main( void ) {
int i;
puts ( "好きな所で止めろ" );
getchar();
for ( i = 1; ; i++ ) printf ( "%d\n", i );
return 0;
}
0249デフォルトの名無しさんNGNG
>>248
もう黙れよJPS
0250デフォルトの名無しさんNGNG
>>248
お前、>>1が気に入らないからこのスレをつぶそうとしているだけだろ?
0251デフォルトの名無しさんNGNG
ishoge系はこう書く。
if(isalpha(c)){
} else if (isdigit(c)){
}
あるものの否定を考えるよりも何かに合致してるかどうかを考える方が安易。
!をやたら使いたがる奴はDQN。
0252デフォルトの名無しさんNGNG
>>32
なんか読みにくかったから、手を入れてみた。
  int m = 3;
  int n = 4;
  int **str;
  int i, j;

  if ((str = (int**)malloc(sizeof(int*) * m)) == NULL) {
    printf("メモリー確保の失敗:1");
    exit(1);
  }
  for (i = 0; i < m; i++) {
    if((str[i] = (int*)malloc(sizeof(int) * n)) == NULL) {
      printf("メモリー確保の失敗:2");
      exit(1);
    }
  }

  for(i = 0; i < m; i++){
    putchar('\n');
    for(j = 0; j < n; j++){
      str[i][j] = 'A' + i * n + j;
      printf("%c", str[i][j]);
    }
  }
  putchar('\n');
  for(i = 0; i < m; i++){
    putchar('\n');
    for(j = 0; j < n; j++) {
      printf("%3d",str[i][j]);
    }
  }
0253252NGNG
表示結果
ABCD
EFGH
IJKL

65 66 67 68
69 70 71 72
73 74 75 76
0254デフォルトの名無しさんNGNG
スタイル厨必死だな
025532NGNG
 ああ・・・。 だったら、これ答えてよ
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("%3c",str1[i1][j1]);
}

return 0;
}
0256デフォルトの名無しさんNGNG
脳障害の>>242が何か言ってるな。
0257デフォルトの名無しさんNGNG
>>252
if ((str = (int**)malloc(sizeof(int*) * m)) == NULL) {
じゃなくて
if (!(str = (int**)malloc(sizeof(int*) * m))) {
にしろって。話聞いてなかったのか?

0258252NGNG
>>32
で、どうすりゃいいわけ?
0259デフォルトの名無しさんNGNG
{x^(-2/3)}・{(1-x)^(-1/3)} ← これを表わすのに、
pow(x, -2/3)*pow(1-x, -1/3) ← この書き方で合ってますか?
0260デフォルトの名無しさんNGNG
>>251
へえ。じゃあ「アルファベット以外」ってどう書くのさ。
「アルファベットでも数字でもない」ってのは?
0261252NGNG
>>257
聞いてなかった。
026232NGNG
>>252 まあ、大分内容は変わってるが参考にはなりそうだ。
0263デフォルトの名無しさんNGNG
整数/整数って浮動少数で評価されたっけ?
0264デフォルトの名無しさんNGNG
>>259
合ってません。整数/整数は切り捨てて整数になります。
0265デフォルトの名無しさんNGNG
>>263
されないけど、powに渡せば結果がdoubleになるだろ?
0266デフォルトの名無しさんNGNG
>>264
あの、>259のような場合どういう書き方をしたら良いですか?
0267デフォルトの名無しさんNGNG
>>265
渡す前に切り捨てられちゃうって…
0268デフォルトの名無しさんNGNG
str = (int**)malloc(sizeof(int*) * m);
if (!str) {
0269265NGNG
あー、この場合はわり算をするときにdoubleでやらないといけないのか。
.0をつければOKだよね
0270デフォルトの名無しさんNGNG
pow(x, -2.0/3)*pow(1-x, -1.0/3)
0271デフォルトの名無しさんNGNG
>>266
分母の前にでも (double) 入れろ
0272デフォルトの名無しさんNGNG
>>260
人に聞く前にコード書いてみたらどうかな、お馬鹿さん。
0273デフォルトの名無しさんNGNG
{x^(-2/3)}・{(1-x)^(-1/3)}
pow(x, -2.0 / 3.0) * pow(1.0 - x, -1.0 / 3.0)
0274デフォルトの名無しさんNGNG
>>268
なんでわざわざ二つに分けるんだ? 一行でいいだろ。
■ このスレッドは過去ログ倉庫に格納されています