C言語を少しずつ勉強してきて、先日「今まで覚えた内容である物を作ろう」と発案し、さっそく取組ました。
作る物は「ステータスのシミュレーター」なるもので、予め用意した基本ステータスに武器や防具などを付けて、付けた装備に応じてステータスが変動するような小さいシステムです。
また、せっかくなので「ヘッダーファイル」を利用して出来るだけmain.cppに書くプログラムを減らそうと考えました。
まずmain.cppに予め用意した装備を選ぶ処理を置こうと考え、その処理をヘッダーにまとめて配置してみたのですが、いざコンパイルするとなると書いたはずの処理がすっとんでしまいました。
コンパイルに成功してるということは多分文法のミスは無いと思われますが、書き方が間違ってるのでしょうか・・・
今自分が知りたいことは、「どうすればちゃんと処理を実行させられるのか」ということです。
使用しているコンパイラは「visual studio 2010」です
よろしくお願いします。
↓自分が書いたソースコード
main.cpp
#include <stdio.h>
#include "Hu_struct.h"
#include "weapon.h"
struct Hu_status1 Hunter1 = {1, 208, 100, 90, 83, 74, 96, 90, 72, 75};
int main(){
printf("武器はどうする?");
void sword_text();
printf("LV/%d\nHP/%d\nPP/%d\n打撃力/%d\n射撃力/%d\n法撃力/%d\n技量/%d\n打撃防御力/%d\n射撃防御力/%d\n法撃防御力/%d\n",Hunter1.level,Hunter1.HP,Hunter1.PP,Hunter1.strike_power,Hunter1.shoot_power,Hunter1.magic_power,Hunter1.skill,Hunter1.strile_defience,Hunter1.shoot_defience,Hunter1.magic_defience);
}
#ifndef _HU_STURUCT_H
#define _HU_STURUCT_H
struct Hu_status1{
int level;
int HP;
int PP;
int strike_power;
int shoot_power;
int magic_power;
int skill;
int strile_defience;
int shoot_defience;
int magic_defience;
};
#endif
#ifndef _WEAPON_H
#define _WEAPON_H
void sowrd_text(int i){
printf("装備する武器は?\n");
printf("0:素手\n");
printf("1:ソード\n");
printf("2:アルバソード\n");
printf("3:ヴィタソード\n");
printf("4:ギガッシュ\n");
printf("5:アルバギガッシュ\n");
printf("6:ヴィタギガッシュ\n");
printf("7:ブレイカー\n");
printf("8:アルバブレイカー\n");
printf("9:ヴィタブレイカー\n");
printf("10:クレイモア\n");
printf("11:アルバクレイモア\n");
printf("12:ヴィタクレイモア\n");
printf("13:キャリバー\n");
printf("14:アルバキャリバー\n");
printf("15:ヴィタキャリバー\n");
printf("16:コートエッジ\n");
printf("17:タルナーダ\n");
scanf("%d", &i);
}
#endif
PS:よくこの掲示板を拝見させてもらっているのですが、掲示板に記載されるソースコードが何故か全部横一列に統一されてしまうのですが・・・