| エスケープシーケンス | ||||
|---|---|---|---|---|
| 文字列 | コード | 略号 | 機能 | 名称 |
| \a | 07 | BEL | 内臓ベルを鳴らす | alert |
| \b | 08 | BS | バックスペース | back space |
| \f | 0C | FF | 改ページ | form feed |
| \n | 0A | LF | 改行 | new line |
| \r | 0D | CR | 復帰 | carriage return |
| \t | 09 | HT | 水平タブ | horizontal tab |
| \v | 0B | VT | 垂直タブ | vertical tab |
| \\ | 5C | \マーク | ||
| \' | 27 | 'マーク | ||
| \" | 22 | "マーク | ||
| \? | 3F | ?マーク | ||
| \ooo | 8進数 | octal | ||
| \xhh | 16進数 | hexadecimal | ||
| \0 | 00 | 文字列表記のゼロ | ||
| 整数の表現 | 例 | |
|---|---|---|
| 8進数 | 0で始まり0~7の数字で構成 | 033 |
| 10進数 | 0以外で始まり0~9の数字で構成 | 123 |
| 16進数 | 0xまたは0Xで始まり0~9,A~Fで構成 | 0x1a |
| unsigned型定数 | uまたはUを末尾につける | 12300u |
| long型定数 | lまたはLを末尾につける | 6767l |
| 優先順位 | 演算子 | 結合 |
|---|---|---|
| 1 | ()(関数呼び出し) [] . -> ++(後置) --(後置) | 左 |
| 2 | ++(前置) --(前置) +(単項) -(単項) ~ &(単項) *(単項) ! sizeof | 右 |
| 3 | ()(キャスト) | 右 |
| 4 | *(二項) / % | 左 |
| 5 | +(二項) -(二項) | 左 |
| 6 | << >> | 左 |
| 7 | < <= > >= | 左 |
| 8 | == != | 左 |
| 9 | &(二項) | 左 |
| 10 | ^ | 左 |
| 11 | | | 左 |
| 12 | && | 左 |
| 13 | || | 左 |
| 14 | ?: | 右 |
| 15 | = += -= *= /= %= <<= >>= &= ^= |= | 右 |
| 16 | , | 左 |
| 演算子 | ||
|---|---|---|
| 算術演算子 | ||
| + | ||
| - | ||
| * | ||
| / | ||
| % | ||
| 関係演算子 | ||
| < | ||
| <= | ||
| > | ||
| >= | ||
| 等価演算子 | ||
| == | ||
| != | ||
| 論理演算子 | ||
| ! | && | |
| || | ||
| インクリメント、デクリメント | ||
| x++ | ||
| ++x | ||
| x-- | --x | |
| 代入演算子 | ||
| = | += | |
| -= | ||
| *= | /= | |
| %= | ||
| &= | ||
| |= | ||
| <<= | 左シフト代入 | |
| >>= | 右シフト代入 | |
| キャスト演算子 | ||
| 条件演算子 | ||
| (条件式)?式1:式2 | 条件式がtrueの時式1、falseの時式2を採用 | |
| ビット演算子 | ||
| & | 論理積 | |
| | | 論理和 | |
| ^ | 排他的論理和 | |
| ~ | ビット反転 | |
| << | ビットシフト左 | |
| >> | ビットシフト右 | |
| sizeof演算子 | ||
| sizeof 単項式 | ||
| sizeof(データ型) | バイト単位で計算。 | |
| ポインタ演算 | ||
| & | アドレスを取得 | |
| * | アドレスの値を取得 | |
| データ型 | ||||
|---|---|---|---|---|
| データ型(Asemble's) | バイト幅 | 表現範囲 | printf()の変換指定 | 構造 |
| char(char) | 1byte | -128~127 | %d,%c | |
| signed char | 1byte | -128~127 | %d,%c | |
| unsigned char | 1byte | 0~255 | %d,%c | |
| int(dword) | 4byte | -2147483648~2147483647 | %d | |
| unsigned int | 4byte | 0~4294967295 | %u | |
| short(word) | 2byte | -32768~32767 | %d | |
| unsigned short | 2byte | 0~65535 | %u | |
| long | 4byte | -2147483648~2147483647 | %ld | |
| unsigned long | 4byte | 0~4294967295 | %lu | |
| float | 4byte | 10^-37~10^38 | %f |
|
| unsigned float | 4byte |
| ||
| double | 8byte | 10^-307~10^308 | %f | |
| long double | 8byte | %Lf | ||
| ポインタ(qword) | 8byte | |||
| void* | 環境依存32bit=4byte/64bit=8byte | |||
| 前処理命令 | |
|---|---|
| #include | 指定したファイルを挿入 |
| #define | マクロ定義(定数定義) |
| #undef | マクロ定義を取り消す |
| #if #ifdef #ifndef | 条件付きコンパイルをする |
| #elif #else #endif | 条件付きコンパイルをする |
| defined | #if #elifの中で判定処理に用いる単項演算子 |
| #pragma | 行番号の付け替えを行う |
| #error | 前処理時のエラー表示を行う |
| # | #define中:仮引数の文字列化単独使用:空命令 |
| ## | 字句の連結を行う |
| ソート法 | |
|---|---|
| バブルソート(基本交換法、隣接交換法) | 隣り合ったデータ同士の比較と入れ替えを繰り返す。 |
| 選択ソート(基本選択法) | 最大最小値を選択し、先頭から順に比較と入れ替えを繰り返す |
| 挿入ソート(基本挿入法) | 未整列データの先頭を別配列として固定し、その後の未整列データからデータを取り固定されたデータと比較、入れ替えする。このサイクルを繰り返す。 |
| シェルソート(改良挿入法) | 一定の間隔をあけた要素同士で挿入ソートを行い、その間隔を1つ狭め挿入ソートを繰り返す |
| クイックソート | ピポットという基準値を決めそれよりも大きい数と小さい数に分けその中でさらに基準値を決め大きい数と小さい数に分ける。これを繰り返す。 |
| ヒープソート | ヒープを作成し整列する。根に最大もしくは最小値が来る特性を利用し、根を取り出し、ヒープの再構成を行う。これを繰り返す |
| マージソート | 要素を分割し少なくなった要素同士で並べ替えと併合を繰り返し元の配列に戻す方法 |
| アドレス指定方式 | |
|---|---|
| 即値アドレス方式 | オペランド部に操作対象の値を直接指定する |
| 直接アドレス方式 | オペランド部に実行アドレスを指定する |
| 間接アドレス方式 | 実行アドレスを格納したアドレスをオペランド部に指定する方式 |
| 相対アドレス方式 | オペランド部の値とプログラムカウンタを加算した値を実行アドレスとする方式 |
| 指標(インデックス)アドレス方式 | オペランド部とインデックスレジスタの値を加算した結果を実行アドレスとする方式 |
| 規定(ベース)アドレス方式 | オペランド部とベースレジスタの値を加算した結果を実行アドレスとする方式 |