- ベストアンサー
C言語 コンパイルエラー(文字列または文字定数が閉じていない)
下記コードでコンパイルすると、コンパイルエラーとなります。試しに、"さようなら"を、"さような"に変更すると、コンパイルエラーは なくなります。どうして、コンパイルエラーとなるのか分からずに困っています。ちなみに、コンパイラは、ボーランドのものを使っています。 ▼エラーとなるコード #include <stdio.h> int main(void) { printf("こんにちは"); printf("さようなら"); return 0; } ▼コンパイルエラー内容 エラー E2380 sample08.c 7: 文字列または文字定数が閉じていない(関数 main ) エラー E2121 sample08.c 9: 関数呼び出しに ) がない(関数 main ) 警告 W8070 sample08.c 10: 関数は値を返すべき(関数 main )
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは、ご解答というわけではないのですが、VCでこのプログラムを実行したところ、問題なく表示されました。 これで、コンパイルエラーが解消されるかは全く謎ですが、試しに・・・ #include <stdio.h> int main(void) { printf("こんにちは\n"); printf("さようなら\n"); return 0; } としてみてはいかがでしょう。 段落を変えたからなんだ・・・という話なんですが^^;
その他の回答 (1)
- asuncion
- ベストアンサー率33% (2127/6289)
> 警告 W8070 sample08.c 10: 関数は値を返すべき(関数 main ) この警告がソースコードの10行目に基づいて出ていますので、 10行目はmain関数の終わりを示す } となるはずです。一方、「エラーとなるコード」は10行に満たないように見えます(私だけ?)。 くだんのソースコードとエラーメッセージは、間違いなく対応していますでしょうか。
お礼
asuncionさん、ご回答ありがとうございます。 ソースコードとエラーメッセージは、間違いなく対応していたのですが、どうやら私のソースコードの保存方法に問題があったようです。 今回は、とんちんかんな質問をしてしまい大変恐縮です……。 …が、気を取り直して、これから頑張ってこれからC言語を覚えていきたいと思います。
お礼
nanami_wicさん、ご回答ありがとうございます。 色々試してみたところ、どうやらコードを保存する際、Shift-Jisを指定していないことがコンパイルエラーの原因のようでした。 「お騒がせしてすみません」&「VCで実行していただき、ありがとうございました」。