このようなステートメントはどういう意味ですか?
int x = ( { int a; scanf( "%d", &a ); a ; } ) ;
コンパイルして実行するのは:と同等です。
int x;
scanf( "%d", &x );
なんらかの匿名関数呼び出しのようなもののようですが、よくわかりません。私は以前のような声明に出くわしたことが({})
なく、オンラインで説明を見つけることができません。どんな助けでも大歓迎です、ありがとう:)
コンテクスト:
これは、次のコードのマクロが展開されたときに取得するコードです。
#define SI ({int a;scanf("%d",&a);a;});
int x = SI;
これは、プログラミングコンテストで誰かが使用するコードです。