C言語/キーワードの分類
表示
< C言語
C23言語キーワードの分類表
[編集]C23言語の仕様に基づいて、キーワードを種類別に分類しました。一部のキーワードは複数のカテゴリに属するため、2回以上登場しています。
ストレージクラス指定子 (Storage-class Specifiers)
[編集]| キーワード | 説明 |
|---|---|
auto
|
自動ストレージ期間を持つローカル変数(デフォルト) |
register
|
レジスタに格納することを推奨するローカル変数 |
static
|
静的ストレージ期間を持つ変数、関数のスコープを制限 |
extern
|
別のファイルで定義された変数や関数の参照 |
typedef
|
新しい型名(データ型の別名)を定義 |
thread_local
|
スレッド固有の変数を定義(C23で_Thread_localから変更)
|
型指定子 (Type Specifiers)
[編集]| キーワード | 説明 |
|---|---|
void
|
値を返さない関数の戻り型、または型なしポインタ |
char
|
文字またはバイト型(1バイト) |
short
|
短い整数型 |
int
|
整数型 |
long
|
長い整数型 |
float
|
単精度浮動小数点型 |
double
|
倍精度浮動小数点型 |
signed
|
符号付き数値型(デフォルト) |
unsigned
|
符号なし数値型 |
bool
|
ブール型(C23で_Boolから変更)
|
_BitInt
|
精度を指定できる整数型(例:_BitInt(32))
|
_Complex
|
複素数型 |
_Imaginary
|
虚数型 |
_Decimal32
|
32ビット10進浮動小数点型 |
_Decimal64
|
64ビット10進浮動小数点型 |
_Decimal128
|
128ビット10進浮動小数点型 |
typeof
|
式の型を表す型指定子 |
typeof_unqual
|
修飾子を除いた式の型を表す型指定子 |
型修飾子 (Type Qualifiers)
[編集]| キーワード | 説明 |
|---|---|
const
|
変更不可能な変数を宣言 |
volatile
|
コンパイラの最適化を抑制し、常に最新の値にアクセス |
restrict
|
ポインタが他のポインタと同じメモリ領域を参照しないことを保証 |
_Atomic
|
アトミック操作を行う変数を宣言 |
制御フロー (Control Flow)
[編集]| キーワード | 説明 |
|---|---|
if
|
条件分岐 |
else
|
if文の代替条件 |
switch
|
多方向分岐 |
case
|
switch文内の個別の場合 |
default
|
switch文内でどのcaseにも一致しない場合の処理 |
for
|
初期化・条件・更新式を持つループ |
while
|
条件に基づくループ |
do
|
後置条件を持つループ(少なくとも1回は実行) |
break
|
ループまたはswitch文から抜ける |
continue
|
ループの次の反復へスキップ |
goto
|
指定したラベルにジャンプ |
return
|
関数から値を返して終了 |
構造体・共用体関連 (Structures and Unions)
[編集]| キーワード | 説明 |
|---|---|
struct
|
構造体型の定義 |
union
|
共用体型の定義 |
enum
|
列挙型の定義 |
sizeof
|
型やオブジェクトのサイズを返す演算子 |
インライン関数 (Inline Functions)
[編集]| キーワード | 説明 |
|---|---|
inline
|
関数呼び出しの代わりに関数のコードを挿入するよう提案 |
アラインメント指定子 (Alignment Specifiers)
[編集]| キーワード | 説明 |
|---|---|
alignas
|
変数のメモリアラインメントを指定(C23で_Alignasから変更)
|
alignof
|
型やオブジェクトの要求アラインメントを取得(C23で_Alignofから変更)
|
定数 (Constants)
[編集]| キーワード | 説明 |
|---|---|
true
|
真のブール値(値1) |
false
|
偽のブール値(値0) |
nullptr
|
ヌルポインタ定数(C23で追加) |
その他の修飾子・キーワード (Other Specifiers/Keywords)
[編集]| キーワード | 説明 |
|---|---|
static
|
配列引数のサイズヒント、関数内の静的変数 |
extern
|
関数プロトタイプで使用される場合の外部リンケージ |
_Noreturn
|
関数が呼び出し元に戻らないことを示す |
_Generic
|
式の型に基づいて選択を行う型ジェネリック式 |
constexpr
|
コンパイル時に評価できる式や関数(C23で追加) |
static_assert
|
コンパイル時のアサーション(C23で_Static_assertから変更)
|