• ベストアンサー

初心者です。エラーが分かりません。

エラーが二つ出てしまいます。 自分ではよく分からなく、図々しく質問しました。 誰か助けてください。 #include<iostream> using namespace std; double fan(double,double angle=360.0); /* angleはデフォルト360 */ double fan(double r, double angle){ return 3.1415926*r*r*angle/360.0; /* 面積を返す */ } int main(void){ double r,angle; cout << "半径を入力してください。 : "; cin >> r; cout << "角度を入力してください。 : "; cin >> angle; cout << "半径 : " << r << " 角度 : " << angle << endl; cout << "面積 : " << fan(r,angle) << endl << endl; cout << "半径 : " << r << " の円なら" << endl; cout << "面積 : " << fan(r) << endl; return 0; }

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

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.4

> こういうのがでます。 > Cpp3.cpp(4) : error C2018: 文字 '0x81' は認識できません。 > Cpp3.cpp(4) : error C2018: 文字 '0x40' は認識できません。 コメント以外のところに漢字の空白が入ってます。 > double fan(double,double angle=360.0); /* angleはデフォルト360 */ の行のセミコロンの後が、そうです。普通の空白やTABにして下さい。

ken33
質問者

お礼

ありがとうございました。やっと分かりました。

その他の回答 (3)

  • selenity
  • ベストアンサー率41% (324/772)
回答No.3

エラーメッセージでは「0x8140が認識できない」と言っているので、全角の空白がプログラム内のどこかに入っていませんか?

ken33
質問者

お礼

ありがとうございました。やっと分かりました。

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.2

ソースを見る限り、特におかしなところはありませんが、 > エラーが二つ出てしまいます。 というところから想像するに、以下の二行でコンパイルエラーが出ているのでは ないでしょうか? > #include<iostream> > using namespace std; この二行の表記は、ANSI C++ で規格が定まったときの表記で、それ以前の C++ コンパイラでは、以下のような表記になります。 #include <iostream.h> /* using namespace は書かない */

  • selenity
  • ベストアンサー率41% (324/772)
回答No.1

あなたの開発環境は何ですか? OSとOSのリビジョン、開発環境のバージョンなどがわかりません。また、どんなエラーメッセージが出ているのでしょうか? 共通事項として何点か。 ・C++なのになぜ --- double fan(double,double angle=360.0); double fan(double r, double angle){ 以下省略、 --- のような「古いプロトタイプ宣言」を行っているのですか? ・C++のコンパイラを使っていますか? ・C++に必要なライブラリはリンクしていますか? 少なくとも私の手元の環境では問題ありません。 Linux + G++(egcs-2.91.66)

ken33
質問者

補足

こういうのがでます。 Cpp3.cpp(4) : error C2018: 文字 '0x81' は認識できません。 Cpp3.cpp(4) : error C2018: 文字 '0x40' は認識できません。 cl.exe の実行エラー

関連するQ&A