yohhoyの日記

技術的メモをしていきたい日記

C2x

#elifdefと#elifndef

プログラミング言語C/C++のそれぞれ次期バージョンC2x/C++2b(C++23)では、新しいプリプロセッサディレクティブ#elifdefと#elifndefが追加される予定。*1 #ifdef identifier:#if defined(identifier)と等価 #ifndef identifier:#if !defined(identifier)と…

2進数リテラル in 標準C

C C2x

プログラミング言語Cの次期仕様C2xでは 2進数リテラル(binary literal) が正式仕様となる。そこ今更とか言わない。 // C2x unsigned x = 0b101010; unsigned y = 0B11110000; ノート:2003年時点の (PDF) Rationale for International Standard Programming …

C2x標準の属性(attribute)

C C2x

プログラミング言語Cの次期仕様C2xでは 属性(attribute) 構文が標準化される。属性構文を先行導入したC++言語とほぼ等価であり、連続するブラケット[[/]]を用いる。*1 // C2x [[nodiscard]] int f(); void g([[maybe_unsed]] int a) { [[maybe_unused] int …