プロが教える店舗&オフィスのセキュリティ対策術

__extension__ unsigned long long _rand_next;

上記の表現の

__extension__

はどんな意味なのでしょうか?
opensslの
ソースコードをVC++2005でコンパイルしたいのです。

よろしくお願いします。

A 回答 (2件)

「ここは標準Cの規格じゃなくて拡張された機能を使用しています」というコンパイラ制御用の指示です。

無くてもプログラムは同じです。
付けないと long long型はCの標準規格にないので、コンパイラオプションによっては警告が出ます。もしVCでエラーになるなら消せばいいです。たくさんあるのなら、
#define __extension__
で空に置換でしょうか。
    • good
    • 0
この回答へのお礼

遅くなってしまいました。
ありがとうございました。

お礼日時:2009/07/16 20:22

_extension_ の意味は #1 のとおりただのマーキングだろうけど, 「C の標準規格」に long long はありますよ>#1.


Visual C は 2008 においてもこの標準に従おうという気がないだけで.
    • good
    • 2

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!