• ベストアンサー

C++でのエラーメッセージの意味

C:\Program Files\Microsoft Visual Studio\MyProjects\hello\hello.cpp(73) : error C2562: 'main' : 関数は 'void' 型として宣言されていますが、値を返しました。 C:\Program Files\Microsoft Visual Studio\MyProjects\hello\hello.cpp(6) : 'main' の宣言を確認してください。 cl.exe の実行エラー hello.exe - エラー 1、警告 0 ************************** C++で、コンパイルしたら、上記のエラーメッセージが表示されました。 考えられるエラーは何でしょうか? どのように直したらよいでしょうか? どうかお教えください。

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

  • ベストアンサー
  • natural
  • ベストアンサー率37% (419/1115)
回答No.3

補足に対する回答ですが、その通りです。 voidというのは「無い」ということを示します。 つまり、この場合返却値がないということになっているわけです。 それなのに0を返している…、おかしいですよね? ですから、この場合intとすれば良いわけです。 voidにして返却値を返さない手もありますが、現在の流儀としてはmainはintで定義するものなので。

gost
質問者

お礼

2度に亘るご返答有り難うございました。 voidとは、無いという意味であったのですね。 知りませんでした。 voidにしてreturn (0);しない方法もあるのですね。 現在の流儀も知りえました。 ご親切に感謝致します。

その他の回答 (2)

  • natural
  • ベストアンサー率37% (419/1115)
回答No.2

メッセージ通りだと思います。 main関数の宣言がvoid型で行われているのにreturnで値を返しているのではないでしょうか。 例えば0を返しているのならば、main関数をint型で定義すれば良いと思います。

gost
質問者

補足

void main() { …(中略) return (0); } 上記であると誤りなのですか? int main(void) { …(中略) return (0); } であると、正しいのでしょうか?

  • satoryu
  • ベストアンサー率50% (4/8)
回答No.1

失礼ですが、 どのようなプログラムなのでしょうか? エラー指定がされている行、またはそれを含む関数部分だけでも いいので載せて頂ければ、回答ができるかと思います。

gost
質問者

お礼

早速のご返答有り難うございました。 超初心者ですので、自分のプログラムを見せるというのは恥ずかしいです。(^^;

関連するQ&A

専門家に質問してみよう