
初めての質問です。
私は初心者で、Visual C++ 2005 Express Editionを使っています。
最近、C++を勉強しようとあるホームページの『0からのゲームプログラミング』という講座を見始めていて、そこの構造体の回の所のサンプルをスキルアップのため手書きで書いてデバックをしてみたらエラーが出てしまいました。
↓このページがそうです。
http://www.plustarnet.com/aspil/Programming/
↓上のページの構造体の回のリンクです。(問題のサンプルは下の方です。)
http://www.plustarnet.com/aspil/Programming/c24. …
そこまではいいんですがそのエラーを見ても全然意味が分からなく、その講座のサンプルと自分のソースを見比べてみても
自分の目で見る限りではスペルミスなどはひとつもありませんでした。そこで、サンプルをそのままコピーしてデバックしてみると今度はちゃんと正常に実行されます。そこで質問なのですが、見た目はまったく同じソースなのにエラーが出ることはありえるのでしょうか?
それとも、やはり自分が間違って書いているのでしょうか?
正直言うところいくら見直してもエラーが出るのでまるでVisual C++が自分のプログラムだけを拒否しているかのように思い始めているほどです。ちなみに以下が自分で書いたプログラムです。
//この行のすぐ下の行からです。
#include<stdio.h>
#include"Main.h"
// 構造体宣言
tagCharacterg_Hero;// 勇者
tagCharacterg_Satan;// 魔王
// 関数のプロトタイプ宣言
void HeroStatus(void):
void SatanStatus(void);
void main(void)
{
g_Hero.lLife = 35;
g_Hero.lStrength = 15;
g_Satan.lLife = 305;
g_Satan.lStrength = 105;
HeroStatus();
SatanStatus();
}
// 勇者のステータスを表示
void HeroStatus(void)
{
printf("勇者のライフ:%d\n", g_Hero.lLife);
printf("勇者の力:%d\n\n", g_Hero.lStrength);
}
// 魔王のステータスを表示
void SatanStatus(void)
{
printf("魔王のライフ:%d\n", g_Satan.lLife);
printf("魔王の力:%d\n\n", g_Satan.lStrength);
}
//上の行まで
※著作権が心配です・・・
そして以下が自分のプログラムででたエラーです。
※アドレスの最初のほうは消しています。
※C++のインストール場所はデフォルトにしています。
1>------ ビルド開始: プロジェクト: test12, 構成: Debug Win32 ------
1>コンパイルしています...
1>Main.cpp
1>\visual studio 2005\projects\test12\test12\main.cpp(11) : error C2062: 型 'void' は不要です。
1>\visual studio 2005\projects\test12\test12\main.cpp(13) : error C2062: 型 'void' は不要です。
1>\visual studio 2005\projects\test12\test12\main.cpp(14) : error C2630: ';' はコンマで区切られたリストで使用しなければなりません。
1>\visual studio 2005\projects\test12\test12\main.cpp(22) : error C3861: 'SatanStatus': 識別子が見つかりませんでした
1>\visual studio 2005\projects\test12\test12\main.cpp(27) : error C2084: 関数 'void HeroStatus(void)' は既に本体を持っています。
1>\visual studio 2005\projects\test12\test12\main.cpp(10) : 'HeroStatus' の前の定義を確認してください
1>\visual studio 2005\projects\test12\test12\main.cpp(34) : error C2365: 'SatanStatus' : 再定義; 以前の定義は '以前は不明な識別子' でした。
1>ビルドログは "file://\Visual Studio 2005\Projects\test12\test12\Debug\BuildLog.htm" に保存されました。
1>test12 - エラー 6、警告 0
========== ビルド: 0 正常終了、1 失敗、0 更新、0 スキップ ==========
以上です。今回は初めての質問ということで書き言葉や文面を不快に思うかもしれないですがそこの所はお許しください。非常に長文の所も
お許しください。
最後に何もわからない自分の質問を読んでいただきありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# 質問です 下記のコードを分かりやすく解説お願いします 初心者です #include ‹stdio.h 3 2022/05/26 22:03
- Java java final 1 2022/06/10 22:49
- C言語・C++・C# const char** p;のとき、free(p)でC4090エラーとなるのはなぜですか 3 2023/03/31 16:28
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- C言語・C++・C# プログラミングペーパーテスト 次の問題の実行結果を答えろ #include int x[ ] = { 1 2022/06/16 21:49
- C言語・C++・C# スタックフレームの消滅 6 2023/05/20 12:33
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分 1 2022/07/19 17:03
- その他(プログラミング・Web制作) 十進BASICでの再帰についての質問です。 2 2022/11/18 09:17
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# プログラミングの授業のペーパーテスト 実行結果を答えろ #include int x[ ] = {1 3 2022/06/16 20:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
組み込みマイコン
-
定義した文字列を wchar_t 系の...
-
DirectInput でのエラー
-
コールバックって・・・
-
一定時間ごとにプログラムを起...
-
const_castのつかいどころを教...
-
C#でトーンカーブの作成
-
C++でオーバーロードに関するバ...
-
多重定義が起きている?--lnk20...
-
PICのシリアル通信について
-
main関数の戻り値について
-
カノニカルモードの設定について
-
静的でないメンバ関数の呼び出...
-
「Aに対するBの割合」と「Aに対...
-
マイナスからプラスへ転じた時...
-
「指定されたキャストは有効で...
-
Aの値からBの値を除するとは??
-
Enterキーを押されたら次の処理...
-
2÷3などの余りについて
-
【C++】関数ポインタの使い方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【gcc・cygwin】multiple defin...
-
多重定義が起きている?--lnk20...
-
const_castのつかいどころを教...
-
C++にてtemplateで受け取った任...
-
既定のコンストラクタがありま...
-
戻り値を返す関数の前に(void)...
-
静的でないメンバ関数の呼び出...
-
int main()、void main()、void...
-
C# KeyDownイベントでショート...
-
C# Controls.Addで動的に配置し...
-
(void)0 はどんな意味ですか
-
gcc: incompatible pointer type
-
_beginthreadにて発生するコン...
-
C#でラジオボタンを設定に記録...
-
C#でテンキーの操作は可能でし...
-
C++別のオブジェクトからメンバ...
-
CTabCtrl:TABインデックス単位...
-
見た目は同じソースなのにエラ...
-
pictureboxの画像を削除するには?
-
【VC++6.0】イベントハンドラ関...
おすすめ情報