理系の気ままメモ

自分の興味のあることや発見したことや思ったことなどを自由気ままに書くブログ。

ローベルの入門講座を読んで

本記事について

自分用のメモを残します。自分が知らなかったことやあやふやな部分をメモする。

メモ

Chapter1

01-02
endlを書いていないと文字が出力されない場合がある。改行しない場合には"flush"というものをが用意されている。

Chapter2

02-04
C言語の場合には、引数なしの関数にする場合には引数のかっこの中に"void"を書くようにする。そのほうが無難である。詳細は付録Cを参照。
02-05
初期化処理を書いていない場合は、グローバル変数(関数外で宣言した変数)は勝手に0で初期化される。ローカル変数(関数内で宣言した変数)は何が入っているか分からない。
02-07
1<=a<=5は(1<=a)<=5と同じになり、何をしているか分からなくなる。(構文解析?)
02-10
配列外参照を"バッファオーバーラン"あるいはブッファオーバーフロー"と言う。配列外参照が原因のバグは非常に見つけづらい。
配列変数を宣言するときには、[]の中に変数は入れられない。
02-12
for文でfor(初期設定文; 条件式; 再設定式) { 実行文 } について再設定式を複数指定したい場合には核再設定式をコンマで区切って列挙する。
昔のC言語では、初期設定文で変数を宣言することができなかった。しかし、新しいC言語の仕様(C99)では宣言できるようになった。
02-15
switch文でcase 値: 実行文について値には低数式しか使えず、変数や関数の戻り値は使用できない。
continue文はループ文でないswitch文には効力を持たず、その外のループ文に対して効力を持つ。

Chapter3

03-01
各環境での型のバイト数はsizeofという演算子で取得できる。sizeofのあとにカッコつきで型名を書けば、その型のサイズを取得できる。また、sizeofの後に変数名を書けば、その変数のサイズを取得できる。この場合はかっこは必要ない。

Chapter4
Chapter5

2020/9/22最終更新