2005-06-01から1ヶ月間の記事一覧

数値の文字列化

C

デバッグ文を埋め込むとき、 ほげ発生 at function_x:nみたいに、「関数名:行番号」を付加したいと思うことはよくある。GCCには__FUNCTION__という組み込みマクロがあり、Linuxでは__FUNC__という名前で定義されている。これがこの用途に使えるのだが標準化…

プリプロセッサの不思議

C

わかってる人には不思議でも何でもないのだが。 /* マジックナンバーを書きたくないのでenumを使う */ enum { VERSION_INVALID, VERSION_1, VERSION_2, };/* 現在はバージョン2 */ #define CURRENT_VERSION VERSION_2/* バージョン番号表示 */ void print_ve…

cross platform development

クロスプラットフォームというか、プラットフォーム依存というか、そういうことをよく扱っているのでメモ。基本的にC/C++。 メモ プリプロセッサは、未定義の識別子を0として扱う。 従って、#if __GNUC__ >= 3はGCC3以上として使えるが、GCC2系かどうかを#if…