Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

_Cの汎用キーワード? 1:20


Cの_Genericキーワードは、さまざまなデータ型のMACROを定義するために使用されます。この新しいキーワードは、C11標準リリースのCプログラミング言語に追加されました。 _Genericキーワードは、プログラマーがMACROをより効率的に使用できるようにするために使用されます。

このキーワードは、変数のタイプに基づいてMACROを変換します。例を見てみましょう、

#define dec(x) _Generic((x), long double : decl, \ default : Inc , \ float: incf )(x)

上記の構文は、MACROをさまざまなメソッドのジェネリックとして宣言する方法です。

サンプルコードを見てみましょう。このコードは、データ型に基づいて値を返すMACROを定義します-

#include <stdio.h>
#define typecheck(T) _Generic( (T), char: 1, int: 2, long: 3, float: 4, default: 0)
int main(void) {
   printf( "passing a long value to the macro, result is %d \n", typecheck(2353463456356465));
   printf( "passing a float value to the macro, result is %d \n", typecheck(4.32f));
   printf( "passing a int value to the macro, result is %d \n", typecheck(324));
   printf( "passing a string value to the macro, result is %d \n", typecheck("Hello"));
   return 0;
}

出力

passing a long value to the macro, result is 3
passing a float value to the macro, result is 4
passing a int value to the macro, result is 2
passing a string value to the macro, result is 0

  1. JavaScriptにこのキーワードを説明しますか?

    JavaScriptのthisキーワードは、それが属するオブジェクトを参照します。単独または関数内の場合は、グローバルオブジェクトを参照できます。メソッド内の場合は所有者オブジェクトを参照し、イベントリスナーでイベントを受信したHTML要素を参照します。 例 以下は、JavaScriptのこの識別子のコードです- <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport&quo

  2. JavaScriptでコールバックとして関数を渡す

    以下は、JavaScriptでコールバックとして関数を渡すためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> &