「Cプログラミングでよくあるエラー」の編集履歴(バックアップ)一覧はこちら

Cプログラミングでよくあるエラー」(2009/04/10 (金) 10:26:19) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

*scanfでアドレスを渡していない int a; scanf("%d",a); *scanfでchar配列名のアドレスを渡している char str[64]; scanf("%s",&str) *条件分なのに「==」じゃなくて「=」を使って代入をしてしまう int a=5; if(a=5){... *printfでフォーマットが間違っている char *str="abcdefg"; printf("%d",str); *関数名が間違っている int i=10; pritnf("%d",i); *文字列を入れる変数が配列になっていない char str; scanf("%s",str); *用意した文字列の配列要素数を超えて文字列を書き込もうとしている char address[3]; //住所を入れるはずなのに! printf("input address of your home."); fgets(address,100,stdin); -そもそもfgetsの第2引数はsizeof(address)にすべき。 *for文やwhile文で必要なループ回数を超えてまわしている *初期値が設定されていないのにインクリメンタル演算子を使っている int i,count; for(i=0;i<10;i++){count++;} *for文の後にセミコロンを書いてしまう for(i=0;i<10;i++); count++; -10回分、空の文をまわしているだけになってしまう。 *「'」と「”」の間違い char a; a=getchar(); if(a=="y"){... -1文字の場合は「'」 * 文字列の比較で==を使う char *str1="abc"; char *str2="cdf"; if(str1==str2){... -こういうときは  if(strcmp(str1,str2)==0) とする
*scanfでアドレスを渡していない int a; scanf("%d",a); *scanfでchar配列名のアドレスを渡している char str[64]; scanf("%s",&str); *条件分なのに「==」じゃなくて「=」を使って代入をしてしまう int a=5; if(a=5){... *printfでフォーマットが間違っている char *str="abcdefg"; printf("%d",str); *関数名が間違っている int i=10; pritnf("%d",i); *文字列を入れる変数が配列になっていない char str; scanf("%s",str); *用意した文字列の配列要素数を超えて文字列を書き込もうとしている char address[3]; //住所を入れるはずなのに! printf("input address of your home."); fgets(address,100,stdin); -そもそもfgetsの第2引数はsizeof(address)にすべき。 *for文やwhile文で必要なループ回数を超えてまわしている *初期値が設定されていないのにインクリメンタル演算子を使っている int i,count; for(i=0;i<10;i++){count++;} *for文の後にセミコロンを書いてしまう for(i=0;i<10;i++); count++; -10回分、空の文をまわしているだけになってしまう。 *「'」と「”」の間違い char a; a=getchar(); if(a=="y"){... -1文字の場合は「'」 * 文字列の比較で==を使う char *str1="abc"; char *str2="cdf"; if(str1==str2){... -こういうときは  if(strcmp(str1,str2)==0) とする

表示オプション

横に並べて表示:
変化行の前後のみ表示: