C言語>関数2
今回説明するのは戻り値を使った関数です。
例文
//===============================================
//include
//===============================================
#include <stdio.h>
//===============================================
//関数のプロトタイプ宣言
//===============================================
void Initialize();//初期化関数
int CalcDamage(int at, int def);//ダメージ計算
//===============================================
//struct
//===============================================
struct CharaData
{
int m_attack;//攻撃力
int m_defence;//防御力
};
//===============================================
//variable
//===============================================
struct CharaData player;
struct CharaData enemy;
//===============================================
//メイン関数
//===============================================
int main(void)
{
int damage;//ダメージ値
Initialize();
damage = CalcDamage(player.m_attack, enemy.m_defence);
[[printf]]("enemyに%dのダメージ\n", damage);
return 0;
}
//===============================================
//初期化関数
//===============================================
//[input]
// なし
//[return]
// なし
//===============================================
void Initialize()
{
player.m_attack = 5;
player.m_defence = 3;
enemy.m_attack = 5;
enemy.m_defence = 3;
}
//===============================================
//ダメージ計算関数
//===============================================
//[input]
// at:攻撃力
// def:防御力
//[return]
// at-defの計算結果
//===============================================
int CalcDamage(int at, int def)
{
return at - def;
}
実行結果

解説
int CalcDamage(int at, int def)
{
return at - def;
}
int型で宣言した関数です。
戻り値として、攻撃力と防御力の差を取っています。
戻り値として、攻撃力と防御力の差を取っています。
damage = CalcDamage(player.m_attack, enemy.m_defence);
ここで、プレイヤーの攻撃力と敵の防御力の差をdamageという
変数に入れています。
変数に入れています。
添付ファイル