dポイントプレゼントキャンペーン実施中!

こんにちわ。
参考書を使ってCの勉強をしています。
visual2008 C++ Express Editionを使い列挙列の勉強のためのプログラムを打ったのですが

enum season select(void)
{
 int tmp;
  do {
printf("0・・・ 春1…夏 2…秋 3…冬 4…終了:");
scanf("%d", &tmp);
}while(tmp < Spring || tmp > Invalid);
return (tmp);
}

の部分で「 error C2440: 'return' : 'int' から 'season' に変換できません。」
となってしまいます。

勉強を始めたばかりなもので原因がよくわかりません。くだらない質問かもしれませんが、原因を教えていただけないでしょうか。

A 回答 (1件)

関数の戻り値がenum season型になっているのにintで戻り値を返そうとしているからです。


tmpの値と対応するenum seasonの値を返してやりましょう。
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
アドバイス通りやったらできました。
ありがとうございました。

お礼日時:2009/01/07 00:56

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