C プリプロセッサ演算子 新しいページはコチラ
提供: yonewiki
(→defined() Defined演算子) |
|||
1行: | 1行: | ||
+ | [[C PlusPlus#Cにもあった技術|C++]]へ戻る | ||
+ | |||
+ | |||
※このページではC言語にも存在していたという意味で記事タイトルがC プリプロセッサ演算子になっていますが、<br /> | ※このページではC言語にも存在していたという意味で記事タイトルがC プリプロセッサ演算子になっていますが、<br /> | ||
[[C PlusPlus|C++]]でも同様です。[[C PlusPlus|C++]]だけの機能がある場合は明記します。<br /> | [[C PlusPlus|C++]]でも同様です。[[C PlusPlus|C++]]だけの機能がある場合は明記します。<br /> | ||
5行: | 8行: | ||
− | マクロで引数付きのマクロが定義できることを紹介しましたが、引数をどのように扱うかを変更するための演算子3つと、主に#ifディレクティブの条件記述のために利用される定義済マクロ判定を行う演算子1つで、プリプロセッサ演算子は全部で4種類あります。 | + | マクロで引数付きのマクロが定義できることを紹介しましたが、引数をどのように扱うかを変更するための演算子3つと、主に#ifディレクティブの条件記述のために利用される定義済マクロ判定を行う演算子1つで、プリプロセッサ演算子は全部で4種類あります。[[VC PlusPlus:マクロ定義を展開した後のプログラムを確認する方法|理解を助ける情報として、こういったモノ]]もあるので、VisualStudio利用者の人ならば、参考にしてみて下さい。 |
15行: | 18行: | ||
==='''<nowiki>#</nowiki>''' 文字列化演算子 2重引用符<nowiki>" "</nowiki>=== | ==='''<nowiki>#</nowiki>''' 文字列化演算子 2重引用符<nowiki>" "</nowiki>=== | ||
+ | |||
マクロ引数を2重引用符のついた文字列として扱う演算子です。マクロ引数に2重引用符を使うわけですから、プログラムとしても2重引用符を使うような部分の置き換えのために利用するものです。したがって、文字列リテラルによる初期化やprintf命令や、文字列操作関数の引数といった文字列リテラルを必要とするようなプログラムソースコードのマクロ置換のために使われると考えればよいと思います。 | マクロ引数を2重引用符のついた文字列として扱う演算子です。マクロ引数に2重引用符を使うわけですから、プログラムとしても2重引用符を使うような部分の置き換えのために利用するものです。したがって、文字列リテラルによる初期化やprintf命令や、文字列操作関数の引数といった文字列リテラルを必要とするようなプログラムソースコードのマクロ置換のために使われると考えればよいと思います。 | ||
120行: | 124行: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
となります。 | となります。 | ||
+ | |||
+ | |||
+ | [[C PlusPlus#Cにもあった技術|C++]]へ戻る |