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)
とする

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2009年04月10日 10:26