解決済みの質問
本日からC++を勉強しはじめました。
使用しているコンパイラはBORLAND C++ COMPILER 5.5 です。
#include<iostream>
int main(){
cout<<"hello";
return 0;
}
上記をコンパイルすると下記のエラーが出ます。
いったいどこがいけないのでしょうか。
どなたか教えてくださいませ。
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
123.c:
致命的エラー F1003 C:\BORLAND\BCC55\include\stdcomp.h 5: error 指令: Must use C++ for STDCOMP.H
*** 1 errors in Compile ***
*** コンパイル終了 ***
投稿日時 - 2008-07-19 21:55:30
> bcc32 123.c でコンパイルしましたが結果は同じです。
いえ、bcc32 -P 123.c でコンパイルして下さいって意味でした。。
ANo.1さんの書かれているように、using namespace std; を追加するとかは必要でしょう。
投稿日時 - 2008-07-19 22:48:36
お礼
JaritenCat 様
using namespace std; を追記し
bcc32 -P 123.c でコンパイルできました。
入門者なので良くわからないのですが、
"-P" は、どのような場合に使い分けるのですか?
投稿日時 - 2008-07-19 23:17:18
36人が「このQ&Aが役に立った」と投票しています
ベストアンサー以外の回答(8件中 1~5件目)
> "-P" は、どのような場合に使い分けるのですか?
簡単にまとめます。
拡張子がcのとき・・・C言語としてコンパイルしますので、C++で書いたものをコンパイルするときは、-Pオプションが必要です。
bcc32 -P 123.c でコンパイルします。
-Pオプションを指定しないと、質問のエラーがでます。
拡張子がcppのとき・・C++言語としてコンパイルしますので、-Pオプションは不要です。
bcc32 123.cpp または、 bcc32 123 でコンパイルします。
※C++で書いたものは、拡張子をcppにすることをおすすめします。
ついでに、
<iostream>でも<iostream.h>でも使えるようですが、iostream.hは時代遅れなので使ってはいけません。
<iostream>をインクルードする場合は、coutが分からないというエラーが出ると思いますので、using namespace std; をいれるか、coutをstd::coutにしましょう。(後者の方をおすすめします)
投稿日時 - 2008-07-19 23:36:03
お礼
JaritenCat 様 ありがとうございました。
投稿日時 - 2008-07-20 09:50:59