2006年度の大阪経済大学のCプログラミング基礎/応用、プログラミングI/IIで使用しているテキスト 『大駒誠一著「文科系のためのC」サイエンス社(ISBN4-7819-0886-1)』の正誤表です。 授業の進行に沿って充実公開していきますので、既知の正誤の全てではありません。 また、授業担当者(出口)の私見も含まれています。
誤: | あきたらならくなった |
正: | あきたらなくなった |
誤: | 表示すること要求... |
正: | 表示することを要求... |
誤: | void main(void)
{
printf...
}
|
void main()は関数mainの戻り値が無いことになる main(void)は関数mainの引数が無いことになる (このテキストの { } の位置は個人的に嫌いだ!) | |
正: | int main(int argc, char *argv[])
{
printf...
}
|
関数mainは実行環境に対して状態情報(int)を返す コマンドライン引数として実行環境からプログラム(関数main)にパラメータを渡すことができる | |
OK: | main()
{
printf...
}
|
関数の(戻り値)の型を省略した場合はintと見なされる 空の引数リスト(function())は引数について何も仮定しないことを表し、パラメータのチェックがされなくなる |
誤: | 「お誕生日おめでとう」 |
正: | 「誕生日おめでとう」 |
誤: | scanf("%S",name); |
正: | scanf("%s",name); |
誤: | printf("誕生日おめでとう, %Sさん\n",name); |
正: | printf("誕生日おめでとう, %sさん\n",name); |
追加: |
空白文字(スペース)と改行文字以外にタブも空白(ブランク)に含まれる。 ブロック内のインデントにはスペースではなくてタブを用いた方が良い。 |
誤: | euroは欧州共同体(EU) |
正: | euroは欧州連合(EU) |
誤: | nen = 0; |
正: | nen = 0.0; |
誤: | nen = nen + 1; |
正: | nen = nen + 1.0; |
誤: | ...なければ読まなくでも, |
正: | ...なければ読まなくても, |
誤: | 文法ノート 5.3 参照 |
正: | 文法ノート 5.6 参照 |
誤: | ...を指示すもので, |
正: | ...を示すもので, |
誤: | n++; |
正: | i++; |
誤: | (式の入ったひし形に左側から矢印が入っている) |
正: | (式の入ったひし形に上から入っている矢印に合流させる) |
誤: | 鶴は何羽,亀が何匹と計算し... |
正: | 鶴は何羽,亀は何匹と計算し... |
誤: | %d ところに... |
正: | %d のところに... |
誤: | ...条件が共に成立することを要求する演算子で, |
正: | ...条件が共に成立するときのみ成立する(1となる)演算子で, |
誤: | 頭と足の組合わせ... |
正: | 頭と足の組合せ... |
誤: | 単独に1引算する... |
正: | 単独に1を引算する... |
誤: | seikei1.c |
正: | seiseki1.c |
ファイル名が "a:seiseki.dat" 等となっているが、 A:ドライブ(FDドライブ?)のファイルを扱っている。
誤: | 出力は12行目 |
正: | 出力は16行目 |
誤: | seseki3.c |
正: | seiseki3.c |
誤: | FILE *fin, *out; |
正: | FILE *fin, *fout; |
誤: | クロース |
正: | クローズ |
誤: | fopen(ファイルポインタ, モード) |
正: | fopen(ファイル名, モード) |
誤: | ...の大文字だとこの関数の値が1になり,大文字以外 |
正: | ...の小文字だとこの関数の値が1になり,小文字以外 |
「main()関数がどこからも呼ばれることがない」のであれば、その引数って何処の誰が設定するんだ!?って突っ込みたくなる! そもそもプログラムが実行されない!!
誤: | void main(void)に関する記述 |
正: | 正確には、int main(int argc, char *argv[]) 関数mainは実行環境に対して状態情報(int)を返すことができる 戻り値 0 は正常終了、0 以外は異常終了 コマンドライン引数として実行環境からプログラム(関数main)にパラメータを渡すことができる パラメータを渡さない(渡されたパラメータを使わない)のであれば main() でも良い |
誤: | *numb |
正: | *num |