• 締切済み

enumの基礎

下記のソースをenumを使わずに定義するとどのようになるんですか? 下記のソースの意味が分かるように教えてください。 enum {FALSE, TRUE} i = FALSE;

みんなの回答

  • gimmick
  • ベストアンサー率49% (134/270)
回答No.2

「enum {FALSE, TRUE} i = FALSE;」は enum BOOL {FALSE, TRUE}; enum BOOL i = FALSE; と同じ事です。(列挙型に名前をつけない点が違いますが。) また、「{FALSE, TRUE}」を「{FALSE = 0, TRUE = 1}」としても同様です。 >下記のソースをenumを使わずに定義するとどのようになるんですか? #define FALSE 0 #define TRUE 1 int i = FALSE; としたらいいと思います。intが嫌だったら typedef int BOOL; とでもしてください。 #こんな質問するくらいだからC++ではないんだろうと考え、bool型には触れませんでした。

  • honiyon
  • ベストアンサー率37% (331/872)
回答No.1

こんにちは、honiyonです。  全く同じ、というわけにはいませんが・・・ その1  bool i; i = FALSE; その2  #define _TRUE 0 #define _FALSE 1 int i; i = _FALSE; ※TRUE/FALSEは標準で定義されているので先頭にアンダーバーをつけてます。  参考になれば幸いです(..

Slihpon
質問者

お礼

この1つ上の質問はSetEndOfFileで解決しました。

Slihpon
質問者

補足

ありがとうございます。 もう少し教えてください。 #define sin 0 #define gi 1 上記は enum {sin = 0, gi = 1}; と同じですか? enum {sin = 0, gi = 1}; int i = sin; を1行で書いたものが enum {sin = 0, gi = 1} i = sin; ですか?

関連するQ&A