• ベストアンサー

#define hoge long longって正しいでしょうか?

いつもお世話になっておりますm(__)m 表題の件なのですが、 #define hoge long long とやって、hoge型は、long longで置き換えてねー って書いた場合、 C言語の場合、正しいのでしょうか? あるいは、longとlongの間が空いてちゃダメなのでしょうか? 質問のきっかけは、 #define hoge long long 中略 typedef struct _hogehoge { long long val; 中略 } hogehoge; のようなヘッダーファイルを含む あるプログラムをビルドした際に、 error C2632: 'long' と 'long' の 2 つの型指定子のあいだにコードがありません。 というエラーが出たためです。 どなたかご教授の程、よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.2

> C言語の場合、正しいのでしょうか? お使いのコンパイラーは何ですか? お使いのコンパイラーが long long 型に対応していれば、正しいです。 > error C2632: 'long' と 'long' の 2 つの型指定子のあいだにコードがありません。 このエラーが出るということは、お使いのコンパイラーが long long 型に対応していないのではないでしょうか?

micchicchi
質問者

お礼

うおおおおお!!!! なんと見事な回答>< しかも、asuncion様、三度もお世話になり… 氷解しました~ まだ、専用のコンパイラー買ってなくて、 シュミレーターだけでプログラムってたのです。 そうかそうか! 経験ってすごいですね! ありがとうございましたm(__)m

その他の回答 (1)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

long long は C99 だから, この規格に対応してないコンパイラだとダメかもね.

micchicchi
質問者

お礼

Tacosanさん、ありがとうございます。 納得了解です! 今後もご贔屓の程m(__)m

関連するQ&A