C言語の `typeof` 演算子の使い方を教えてください

C言語でtypeofは型マクロであり、式データ型を取得するために使用されます。構文は次のとおりです。

typeof(式)

Expressionは、任意の C 言語の式です。typeof は、expression のデータ型を返します。

型は何らかのデータの種類です。

  1. 変数のデータ型を取得する:
int num = 10;
typeof(num) numType; // numType的类型为int
  1. 配列要素のデータ型を取得する:
int arr[5];
typeof(arr[0]) arrType; // arrType的类型为int
  1. ポインタ型の取得:
int *ptr;
typeof(ptr) ptrType; // ptrType的类型为int *
  1. 関数の戻り型を取得する
int add(int a, int b) {
    return a + b;
}
typeof(add) addType; // addType的类型为int

なお、typeofはコンパイル時の演算子であり、実行時の関数ではありません。そのため、既知の型にのみ使用可能であり、実行時にしか判明しない型には使用できません。

bannerAds