くだすれC言語(初心者用) Part.2
■ このスレッドは過去ログ倉庫に格納されています
0080デフォルトの名無しさん
2007/03/18(日) 13:59:24getcharはEOFも返すのでint型を返すと宣言されており、実は正解。
EOFの場合を弾いてからchar型として扱うべき
> printf("%c\n",a);
可変個引数では全てint以上に拡張されて引数が渡される規則。
char型の値を渡そうとint型の値を渡そうと正常に動いてしまう。
> int a[50]="Hello";
できないという規則になっているからとしか言えない。
int型の配列に文字列を無理やり入れる方法はあるが、
文字列を扱う関数はchar配列、つまりsizeof (char) == 1バイトずつ
文字がメモリに格納されることを前提にコードが書かれているので、
無理にint型の配列にしたところで、正しく動作しない。
■ このスレッドは過去ログ倉庫に格納されています