ページ 11

原因がわかりません

Posted: 2011年12月20日(火) 10:01
by ユングフラウ
初めまして今朝から勉強をはじめました。
コンパイラ Visual C++ 2008 Express Edition
(インストールやコンパイルはこちらのサイトを参考にしましたhttp://dixq.net/vcpp.html)

入門サイトを利用していますがhallo worldで一時間ほどかかりました。そこは何故か(なんとかではないのがポイント)できました。
しかし次の問題が解けません。
内容は「puts関数で 一行目 二行目 三行目 と改行して出力する」だけの簡単な問題のはずでした。
しかし実際に実行してみたところエラーが起きました。
回答と照らし合せても違いが判らず、回答をそのままコピーして見ましたが同じでした。

VisualC++下部に表示されるエラーの内容はどちらも「識別子が見つかりません」
表示の意味が理解できていませんでしたが、hallo worldの時もエラーを散々はいたのでもしかしたら同じエラーかもしれません。
その時は再起動したら解決しましたが、まさか何かする度に再起動するわけにもいきません。
ヘルプには目を通しましたがさっぱりわかりませんでした。

下記がコードです。
code#include <stdio.h>

int main(void)
{
puts( "1行目" );
puts( "2行目" );
puts( "3行目" );

return 0;
}/code

どんな原因が考えられるのでしょうか?

Re: 原因がわかりません

Posted: 2011年12月20日(火) 10:12
by beatle
表示されるエラーは「識別子が見つかりません」の11文字だけでしょうか?
例えば「〇〇〇〇:識別子が見つかりません」などと表示されませんか?
〇〇〇〇に入る文字が結構重要な情報となりますので、是非「完全なエラーメッセージ」を載せて下さい。

Re: 原因がわかりません

Posted: 2011年12月20日(火) 12:34
by ユングフラウ
これは失礼しました。
\visual studio 2008\projects\test\2.cpp(4) : error C3861: 'post': 識別子が見つかりませんでした
コピーしてきました。
これはpostへの識別子が見つからないということですか?

Re: 原因がわかりません

Posted: 2011年12月20日(火) 13:12
by beatle
ユングフラウ さんが書きました:\visual studio 2008\projects\test\2.cpp(4) : error C3861: 'post': 識別子が見つかりませんでした
の意味は、2.cppというファイルの中にpostという名前が書いてあるけれど、コンパイラさんはpostという名前を知らないということです。putsを打ち間違えるとpostになったりします。

一つ質問ですが、2.cppというのはなんでしょうか。

コード:

#include <stdio.h>

int main(void)
{
    puts( "1行目" );
    puts( "2行目" );
    puts( "3行目" );

    return 0;
}
が書いてあるファイルでしょうか?それとも違うファイルですか?
main関数が複数のファイルに入っている、なんてことがないようにして下さい。

それから、codeタグの使い方が間違っていますので注意してください。codeと/codeは[と]で囲まなければいけません。

Re: 原因がわかりません

Posted: 2011年12月20日(火) 13:13
by non
2.cppというファイルの4行目で使われているpostという名前(恐らく関数)の本体が見つからないということです。
最初に添付されているソースファイルにはpostという名前は使ってありませんから、変ですね。

2008 EXpress Edition画面の左側に
ソースファイルというところがありますが、
そこに2.cpp 以外は何かありませんか?

追:ダブりましたが・・・

Re: 原因がわかりません

Posted: 2011年12月20日(火) 13:50
by ユングフラウ
無事にできました。
複数のmain関数、それもそちらは入力ミスしていました。
それを削除したところちゃんと動きました。

コード:

#include<stdio.h>

int main(void)
{
	puts("一行目");
	puts("二行目");
	puts("三行目");
	return 0;
}
コードの貼り方もバッチリです!
エラーの読み方の勉強にもなりました。
本当にありがとうございました。