原因がわかりません

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ユングフラウ

原因がわかりません

#1

投稿記事 by ユングフラウ » 14年前

初めまして今朝から勉強をはじめました。
コンパイラ 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

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

beatle
記事: 1281
登録日時: 14年前
住所: 埼玉
連絡を取る:

Re: 原因がわかりません

#2

投稿記事 by beatle » 14年前

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

ユングフラウ

Re: 原因がわかりません

#3

投稿記事 by ユングフラウ » 14年前

これは失礼しました。
\visual studio 2008\projects\test\2.cpp(4) : error C3861: 'post': 識別子が見つかりませんでした
コピーしてきました。
これはpostへの識別子が見つからないということですか?

beatle
記事: 1281
登録日時: 14年前
住所: 埼玉
連絡を取る:

Re: 原因がわかりません

#4

投稿記事 by beatle » 14年前

ユングフラウ さんが書きました:\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は[と]で囲まなければいけません。

non
記事: 1097
登録日時: 15年前

Re: 原因がわかりません

#5

投稿記事 by non » 14年前

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

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

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

ユングフラウ

Re: 原因がわかりません

#6

投稿記事 by ユングフラウ » 14年前

無事にできました。
複数のmain関数、それもそちらは入力ミスしていました。
それを削除したところちゃんと動きました。

コード:

#include<stdio.h>

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

閉鎖

“C言語何でも質問掲示板” へ戻る