論理演算 †演算法則 †知っていると、複雑なif文の条件式を簡潔に記述できることがある。
真理値について †ブーリアン型は一般的に TRUE(0以外) と FALSE(0) の整数値で表わされる。
バイトオーダ(エンディアン) †概要 †リトルエンディアンによるデータの格納 †
文字コード †構造体メンバのバウンダリ †C++のクラス(class, struct)の場合は、仮想関数テーブルへのポインタ変数など自動的に含まれてしまうことがあるため、単純に定義したメンバだけでサイズの計算ができないので注意。 用語 †
考え方 †以下の構造体を例として、構造体のメンバ変数の相対位置とサイズを考える。 #pragma pack(4) // コンパイラのオプションとしてアライメントを 4 に設定した場合 struct A{ char a; short b; long c; double d; char e; };
これで、構造体のメンバ変数の相対位置とサイズが決定する。
浮動小数点数 †IEEE 754 †浮動小数点で一般的に利用されている表現方式。 表現できる範囲 †
符号部/指数部/仮数部 †
浮動小数点への変換手順(単精度の例) †
正規化数以外の表現 †∞など float型からdouble型へのキャスト †符号/指数部/仮数部それぞれ、変換して格納される。
関数(サブルーチン)コールの仕組み †引数 †全て32bitに拡張され、呼出規約に従ってスタックに積まれ、使用後にクリアされる。 戻り値 †
呼出規約(Calling Convention)の種類 †
ソート †安定ソートと非安定ソート †一致するデータが存在する場合のソート結果が定まっているものを安定ソート、未定義のものを非安定ソートと呼ぶ。 比較処理の例
|