• ベストアンサー

いきなり。

C言語をやってます。中学3年です。始めたばっかの初心者なんですが、ビルドエラーが出たのでどこが悪いのか教えていただきたいです。 #include <stdio.h> int main() { printf("今日はよい天気ですね。\n明日もよい天気でしょう\n"); return 0; } これなんですが、ビルドエラーが2つ出ました。 Visual C++を使ってます。 よろしくお願いします。

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

  • ベストアンサー
  • phoenix343
  • ベストアンサー率15% (296/1946)
回答No.4

Debugモードで return 0;の行のところで ブレークポイントをはり、 実行してみてください。 黒い画面が出たままになっているはずです。 ブレークポイントをはらないと、 一瞬で実行されるので 黒い画面が残らないというわけです。 Releaseモードでは ブレークポイントで止めることは出来ないので、 DOS窓を開き、Hello01.exeのあるディレクトリに移動して Hello01.exe とプロンプトで打つことで確認できます。

stopwatch
質問者

補足

コマンドプロンプトの使い方もできれば教えていただきたいです><; 無理言ってすみません><; あと、Ctrl+F5ですとすべてが実行されてしまいます。回避方法はありますでしょうか? わかりやすい説明ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (5)

回答No.6

何も質問するなと言うことではなく、質問の尋ね方について どういう本やホームページを読んで(見て)どこまで分かって、どんな所が分からないかを聞くようにお願いします。 それから私は良いのですが、他の質問に答えてくれた方にはきちんと、ポイントを付けてください。 (質問に回答する意欲を欠きます。) 参照URL「初めてのコマンドプロンプト」の中間ぐらいから読んでみることをお勧めします。

参考URL:
http://www5f.biglobe.ne.jp/~ayum/command/command.html
stopwatch
質問者

お礼

毎回ごめんなさい。できるだけ意識して質問します。 ポイントは締め切ってからじゃないとつけられないんじゃないでしょうか??? いろいろとすみませんでした。

全文を見る
すると、全ての回答が全文表示されます。
回答No.5

>> コマンドプロンプトの使い方もできれば教えていただきたいです><; 最初は自分で調べてください、どうしても意味が分からない場合等に質問して下さい。 (google等で「DOSプロンプト 使い方」等で検索) >> あと、Ctrl+F5ですとすべてが実行されてしまいます。回避方法はありますでしょうか? [Ctrl + F5]はリリースモードでコンパイルされ実行されるため、ブレークポイントをはっても止まりません。 デバックモード(F5のみを押下)で確認するかして下さい。

stopwatch
質問者

お礼

最初は調べたんですがなかなか難しくて。 もう一度調べて見ます。 ありがとうございました^^

全文を見る
すると、全ての回答が全文表示されます。
回答No.3

黒い画面が出ない理由については下記URL参照の事。

参考URL:
http://d.hatena.ne.jp/kyab/20090117/1232213395
stopwatch
質問者

補足

ムムむ・・・むずかしいです・・・。 もう少し簡単にしてもらえればありがたいです><; 貴重なご意見ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • asuncion
  • ベストアンサー率33% (2126/6288)
回答No.2

>>hello01.obj : error LNK2005: _main は既に hello.obj で定義されています。 >1>escape.obj : error LNK2005: _main は既に hello.obj で定義されています。 hello.c hello01.c escape.c という3つのソースファイルがあり、そのすべてにmain関数があるようですね。 本当に、この3つをまとめてビルドする必要がありますか? 最初に提示されたソースの内容は、3つのうちどれでしょうか。

stopwatch
質問者

お礼

なるほど。 今見るとここでコンパイルすればうまくいきました。 でも、結果黒い画面で出てくるのがなぜか出てこないんですがどうしたらいいでしょう?

stopwatch
質問者

補足

いい忘れてしまいました。 えっと、確かビルドしていたのはhello01.cだったと思います。 よろしくお願いいたします。

全文を見る
すると、全ての回答が全文表示されます。
  • asuncion
  • ベストアンサー率33% (2126/6288)
回答No.1

>ビルドエラーが2つ出ました。 「何という」エラーが出たかを示してください。 エラーの数よりも内容のほうが大事です。

stopwatch
質問者

補足

>hello01.obj : error LNK2005: _main は既に hello.obj で定義されています。 1>escape.obj : error LNK2005: _main は既に hello.obj で定義されています。 1>C:\Documents and Settings\Wataru\My Documents\Visual Studio 2008\Projects\hello.c\Debug\sample.exe : fatal error LNK1169: 1 つ以上の複数回定義されているシンボルが見つかりました。 これです。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • error C2143: 構文エラー : ';' が '{' の前にありません。

    #include <stdio.h> int main(void) {   int in;   printf("20以上の数字を入力してください\n");   scanf("%d", &in);   if(in >= 20){     printf("20以上の数字です。\n");     printf("終了します\n\n");}   else if(in <= 5){     printf("5以下の数字が入力されました\n");     printf("20には程遠いです\n\n");}   else(in <= 19){     printf("20以上の数字ではありません\n");     printf("20以上の数字を入力してください\n\n");}   return 0; } C言語でVisual C++ Expressを使っています このコードでビルドすると (16) : error C2143: 構文エラー : ';' が '{' の前にありません。 と表示されてしまいます。何がいけないのでしょうか?

  • Visual C++ 2008 Express Edition

    Visual C++ 2008 Express Editionをダウンロードしたのですが、使い方が全く分かりません。C言語を学習しています。 例えば #include <stdio.h> int main(void) { printf("Hello, World!\n"); return 0; } というようなプログラミングを実行するにはどうすればいいでしょうか

  • MicrosoftVisualC++2010エラー

    学校でC言語を習っているので家でもやろうと思ってMicrosoft Visual C++ 2010 Expressをインストールしました。 取りあえず本を読みながら、プログラムを書いていたのですが、3個目くらいのプログラムを実行(デバッグなしで開始)したら、「ビルドエラーが発生しました。続行して、最後に成功したビルドを実行しますか?」というエラーが出てきて、実行できませんでした。 (はいを押すと、指定されたファイルが見つかりませんと出てきます。) しかも、前に書いたプログラムまで、実行したらそのメッセージが出るようになりました。 一応実行してエラーが出たプログラムも書いておきます。 #include <stdio.h> int main (void) { printf("こんにちは\n"); printf("さようなら\n"); return (0); } 原因がわかりません。 どなたかご教授願います。

  • c言語始めようと思って挑戦しています

    c言語に必要なソフト eclipseのプラグインのc言語のやつと visiual c++ 2008 express edition が一応あります。 それで一番 有名らしい #include <stdio.h> int main(void) { printf("hello, world\n"); return 0; } がビルドエラーになります。 上の二つのソフト以外になにか必要なものがあるのでしょうか? かなりの初心者です。

  • c言語なのですが

    c言語なのですが #include<stdio.h> main() { int a; printf("整数を5回足し算する\n"); scanf("%d %d",&a); printf("a*5=%d\n",a*5); return(0); } でエラーが起こります どこを修正すればいいのでしょうか

  • int とcharの使い方と違い

    教えてgooに投稿するのは初めてですがよろしくお願いします。 最近C言語を勉強し始めた初心者です。 ネットのサイトを見て独学でしています。 過去スレッドをさらっと見て聞きたいことが書いてなかったので投稿します。(同じスレッドがあったらすみませんOTL) #include<stdio.h> int main(void) { int str='a'; printf("str=%c\n",str); return0; } この上のプログラムでは str=a と出て、エラーが出ずにコンパイル出来ました。でも、 #include<stdio.h> int main(void) { int str[]="abc"; printf("str=%s\n",str); return0; } とするとエラーが出ます。 int とcharの使い方と違いについて詳しく教えてほしいです>< お願いします。

  • 昇順に並べ替えるプログラム(続き)

    (C言語)実行例のような3つの整数を読み込み昇順に並べ替えるプログラムは途中までわかったのですがあとはどう修正・追加をすればいいのでしょうか? 実行例 1:45 2:43 3:38 昇順に並べ替えました。 1:38 2:43 3:45 途中までのプログラム #include<stdio.h> int main(void) { int n1,n2,n3; printf("1:"); scanf("%d",&n1); printf("2:"); scanf("%d",&n2); printf("3:"); scanf("%d",&n3); printf("昇順に並べ替えました。\n"); return 0; }

  • Microsoft Visual Studio 2005の関数なのです

    Microsoft Visual Studio 2005の関数なのですが・・・ 今まではこういう風にやっていたのですが・・・ #include<stdio.h> int main() { double a,b,n; a=10.0; b=20.0; printf("実数A=%f",a); printf("\n実数B=%f",b); n=a+b; printf("\n加算:%lf\n",n); return 0 } 今日から関数を使うことになりました。 関数を使ったやり方がわからないので、教えていただきたいです。 よろしくお願いします。 ちなみに、言語はC++です。

  • 結果がおかしい

    ソフトはvisual C++を使ってます。 C言語を本で勉強してて次のようなソースファイルを作ってコンパイルして、実行しました。この場合、結果は 105と表示されると思うのですが、0と表示されます。なぜなのか教えてください。 #include<stdio.h> int main() { printf("%d\n",100*1.05); return(0); } 結果 0

  • scanf文がうまくいかないのですが・・・

    下のようなプログラムを実行するとうまくいかないのですが、何故なのでしょう。 どうかお教えください。 #include<stdio.h> int main(void) { int i; char n; for(i = 0; i < 10; i++) { printf("nを入力してください>>>"); scanf("%c",&n); printf("%c\n",n); } return 0; }