• ベストアンサー

この文章正確ですか?

#include <string> #include <iostream> using namespace std; int main(){ string s1; s1 = "こんにちわ"; count << s1 << endl; } これをコンパイルしようとしてもできません。 どこが間違っているのでしょうか?

  • dfksh
  • お礼率64% (756/1164)

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

  • ベストアンサー
  • KoHal
  • ベストアンサー率60% (110/181)
回答No.7

>文字列または文字定数が閉じていない >ステートメントにセミコロン(;)がない そのままの意味でしょう。 文字列のカッコ(")をちゃんとつける。 文末にセミコロン(;)をつける。 日本語のメッセージぐらいは目を通しましょうや。

dfksh
質問者

お礼

あなたの言うとおりでした。 "が”になっていましたぁ・・・ これですっきりしました。 ありがとうございました。

その他の回答 (6)

  • KoHal
  • ベストアンサー率60% (110/181)
回答No.6

エラーメッセージを補足で提示してください。 あなたがno.3の補足で提示したのはエラーメッセージではありません。 もういちどBCC Developerの出力を良く見直すこと。 分からなければその出力全てを提示すること。

dfksh
質問者

補足

> C:\borland\bcc55\Bin\make.exe -fDebug\rensyuu.mak Debug\rensyuu.obj MAKE Version 5.2 Copyright (c) 1987, 2000 Borland bcc32 -WC -3 -Od -w- -AT -pc -H- -k -b -v -y -DDEBUG -nDebug -c "C:\Documents and Settings\user\デスクトップ\bccdev1221\bccdev1221\user\rensyuu\rensyuu.cpp" Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland C:\Documents and Settings\user\デスクトップ\bccdev1221\bccdev1221\user\rensyuu\rensyuu.cpp: エラー E2380 C:\Documents and Settings\user\デスクトップ\bccdev1221\bccdev1221\user\rensyuu\rensyuu.cpp 7: 文字列または文字定数が閉じていない(関数 main() ) エラー E2379 C:\Documents and Settings\user\デスクトップ\bccdev1221\bccdev1221\user\rensyuu\rensyuu.cpp 8: ステートメントにセミコロン(;)がない(関数 main() ) *** 2 errors in Compile *** ** error 1 ** deleting Debug\rensyuu.obj Compile End !! (Elapsed time 0:00.641) よろしくお願いします

回答No.5

もしかしてとは思いますが、拡張子.cppを.cにしてないでしょうか? BCC自体に問題はありません。 BCCは単体では扱うことができず、Borlandコンパイラが 必要なのですがそれも入ってますか? もし以上のことをちゃんとやっているのにできないなら CPadというソフトが簡単に設定ができて気軽に使えてフリーなのでお勧めです。

dfksh
質問者

お礼

cppでした・・・ 普通にメモ帳でコンパイルしてみたらできました。もう意味がわかりません。cpadというソフトを使ってみます

回答No.4

考えられる要因は2つです。 1 開発環境の設定を間違えている 2 プログラムに全角文字が含まれている 他のプログラムはコンパイルできますでしょうか? 上のプログラムをcoutに直したら普通にコンパイルできたので、 文は正しいと思います。 プログラムの途中で全角文字が入っていたらエラーになるので それに注意してみてください。

dfksh
質問者

お礼

全角文字は こんにちは 以外ありませんでした。 このBCC・・・と言うソフトは使わないほうがいいのでしょうか? 環境設定は参考書のとおりやりました。

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.3

> 直してもコンパイルできませんでした エラーメッセージと処理系を補足してください。

dfksh
質問者

補足

*** 1 errors in Compile *** ** error 1 ** deleting Debug\rensyuu.obj Make End !! (Elapsed time 0:03.438) です よろしくお願いします それとBCC Developerというソフトでプログラムを作っています

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.2

> これをコンパイルしようとしてもできません。 > どこが間違っているのでしょうか? 一応こちらにも回答しておきます。 > count << s1 << endl; countではなく、coutの間違いではないでしょうか?

dfksh
質問者

お礼

回答ありがとうございました 直してもコンパイルできませんでした このほかに考えられることがあったら教えてください

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.1

> この文章正確ですか? プログラムではなく「文章」が正しいかどうかの質問でしょうか?そう解釈して回答します。 > s1 = "こんにちわ"; 間違っています。 正しくは、"こんにちは"です。

関連するQ&A

  • コンパイルができません

    先ほど質問させていただきましたが、もう一度質問させていただきます。 BCC Developerというソフトを使って参考書のとおり次のようなプログラムをコンパイルしようとしました。 #include <string> #include <iostream> using namespace std; int main(){ string s1; s1 = "こんにちわ"; count << s1 << endl; } この文章は正確だと思うのですがコンパイルができません。 コンパイラはborlandの5.5バージョンを使っています どうすればいいのでしょうか?

  • int *a = new int; エラー

    下記をコンパイルすると、'int' 型は 'int *' 型に変換できない(関数 main() ) とエラーが出てしまいました。 何がおかしいのでしょうか ? 初歩的な間違いをしていると思いますが、アドバイスお願いします。 #include<iostream> #include<stdlib> #include<ctime> using namespace std; void main(void) { int *a = new int; a=rand(); cout<<a<<endl; delete a; }

  • 間接参照演算子(*)による値設定で、「セグメンテーション違反です」となる件について

     以下のコードは、GNU C++でコンパイル出来るのですが、実行時に 「セグメンテーション違反です」 と怒られてしまいます。  何ででしょうか? ============== #include <iostream> using namespace std; int main() { int i = 1; int* ip = 0; // ip = &i; // ←この行のコメントを外すと直ります *ip = 0; cout << "i: " << ip << endl; return 0; }

  • stringクラスついて

    http://www.kumei.ne.jp/c_lang/cpp/cpp_62.htm この講座にある以下のコード(一部改変)を 実行しようとVisualStudio2005/WinXP環境で cppコンソールアプリケーションとして コンパイルしたところ、エラーが出てコンパイルできませんでした。 色々試行錯誤してみましたが、どうしても上手くいきません。 BorlandC/C++5.5コンパイラでは普通にコンパイルできましたが・・。 ひょっとしてMSのWin32に対応したstringクラスが他に用意されているのでしょうか? #include <iostream> #include <string> using namespace std; int main() { string s, t, u; s = "苗字"; t = "名前"; u = s + t; cout << u << endl; return 0; }

  • 質問です。。。

    いつもすみません。また質問させていただきます。 まずしたのプログラムを見てください・・・ #include <iostream> #include <string> using namespace std; int main() { string name; int tosi; cout << "こんにちは。私はコンピュータです。" <<endl; cout << "あなたの年齢を教えてください" <<endl; cin >> tosi; cout<<name<<"歳なんですか・・・老けてますね(笑)"<<endl; cout << "どこの学校ですか" <<endl; cin >> name; cout<<name<<"That's right!"<<endl; } このプログラムの8行目にあるint tosi;がありますよね。 この単語がなくても string name があったら12行目のプログラムができたのですが、どういうことなのでしょうか? 表現が一部変ですがよろしくお願いします。

  • 2つのcppファイルから

    1つのexeファイルを作る必要性が出てきました。 (現在質問中の質問に関連しています。) 例えば file.cpp: #include<iostream> using namespace std; void Output(int x) { cout<<x<<endl; } void main(void) { for(int i=0;i<9;Output(i++)); } をコンパイルリンクすれば済むことを file1.cpp: #include<iostream> using namespace std; void Output(int x) { cout<<x<<endl; } file2.cpp: void main(void) { for(int i=0;i<9;Output(i++)); } という風に分かれているファイルをコンパイルリンクしなければならないのです。 cpp -e file.exe -c file1.cpp -c file2.cpp ではエラーになります。 どうすれば良いのでしょうか?

  • C++ の while ループ

    C++の基本学習者です。Windows 10 で Visual Studio Community 2015 を使っています。 教本に載っている、機械語のプログラムをC++でシミュレーションする、というものを作ろうと、途中まで下のようなコードを書き込み、そこまで間違いがないかを確かめるために、コンパイルして実行したら、添付の写真のようなエラーメッセージが出てきました。 // ConsoleApplication65.cpp : メイン プロジェクト ファイルです。 #include "stdafx.h" #include <iostream> #include <iomanip> #include <cstdlib> #include <ctime> #include <cmath> #include <cstring> using namespace System; using namespace std; int main() { // variables int program = 0; int accumulator = 0; int count = 0; int instructionRegister = 0; int operationCode = 0; int operand = 0; int location[100]; cout << "*** Welcome to Simpletron ***" << endl; cout << "*** Please enter your program ***" << endl; cout << "*** one instruction at a time,***" << endl; cout << "*** after the location number and and the prompt of '?' ***" << endl; cout << "*** To stop entering instructions, ***" << endl; cout << "*** enter -9999 . ***" << endl << endl; cout << setfill('0') << internal; cout << setw(3) << count << " ? "; cin >> program; while (program != -9999) { location[count] = program; count++; } return 0; } while ループに問題がありそうですが、コンパイルはちゃんとできたのに、何が悪いのでしょうか? 詳しい方、どうぞ教えてください。お願いします。

  • TextWranglerについて

    私はプログラミングを学ぼうとしていて C++をMacでTexrWranglerをつかって勉強しようとしたのですが 設定がよくわからず、 #include <iostream> using namespace std; int main() { cout << "hello" << endl; } というようにうち「RUN」をクリックするとエラー(error code 13304) がでてうまく実行ができません。 どのように設定をすればよいのでしょうか。

  • C++

    C++で書いた下記のプログラムが、文字の入力が1023個までなら実行されますが、1024個を超えると実行されません。なぜだか分かる方、教えてください。 #include <iostream> #include <string> using namespace std; int main(void) { string Str; cin >> Str; cout << "here"; }

  • stringについて

    C++初心者です。 このプログラムで続行するとエラーがでます。どうしたら無事実行することが出来るのでしょうか? #include<stdio.h> #include <iostream> using namespace std; int main(void) { string str("エラー"); cout << str<< endl; } エラー 1>c:\documents and settings\****\デスクトップ\zisyu12\zisyu12\main.cpp(58) : error C2679: 二項演算子 '<<' : 型 'std::string' の右オペランドを扱う演算子が見つかりません (または変換できません)。 . . . 以下省略

専門家に質問してみよう