Code:
#include <stdio.h>
int saves[3];
int party[3];
int equipment[27];
struct charData {
int class, attack, defense, crit, clan, level, xp, maxXp, hp, maxHp, aura, maxAura, mysticAtk,
mysticDef, hpBonus, atkBonus, defBonus, vit, aur, range, str, luck, rangeBonus, mAtkBonus,
mdefBonus, upgradePoints, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, s1, s2, s3, s4, s5, s6, s7,
s8,s9,s10, weight, maxWeight;
char*name;
char*portrait;
char*portraitLG;
char*type;
char*cond;
char*loc;
};
struct charData CharDataArray[10];
void setCharData()
{
CharDataArray[1].name="Jarrett";
CharDataArray[1].class=1;
CharDataArray[1].type="Knight";
CharDataArray[1].portrait="jarrett";
CharDataArray[1].portraitLG="jarrettLG";
CharDataArray[1].level=1;
CharDataArray[1].xp=0;
CharDataArray[1].maxXp=60;
CharDataArray[1].hp=30;
CharDataArray[1].maxHp=30;
CharDataArray[1].aura=10;
CharDataArray[1].maxAura=10;
CharDataArray[1].cond="Healthy";
CharDataArray[1].attack=4;
CharDataArray[1].defense=3;
CharDataArray[1].crit=1;
CharDataArray[1].mysticAtk=1;
CharDataArray[1].mysticDef=1;
CharDataArray[1].vit=1;
CharDataArray[1].aur=1;
CharDataArray[1].range=1;
CharDataArray[1].str=1;
CharDataArray[1].luck=1;
CharDataArray[1].clan=0;
CharDataArray[1].hpBonus=0;
CharDataArray[1].atkBonus=0;
CharDataArray[1].upgradePoints=8;
CharDataArray[1].a1=1;
CharDataArray[1].a2=2;
CharDataArray[1].a3=3;
CharDataArray[1].a4=4;
CharDataArray[1].a5=5;
CharDataArray[1].a6=6;
CharDataArray[1].a7=7;
CharDataArray[1].a8=8;
CharDataArray[1].a9=9;
CharDataArray[1].a10=10;
CharDataArray[1].s1=1;
CharDataArray[1].s2=4;
//CharDataArray[1].s3=3;
//CharDataArray[1].s4=4;
//CharDataArray[1].s5=5;
CharDataArray[1].weight=22;
CharDataArray[1].maxWeight=100;
CharDataArray[1].loc="Konia village";
CharDataArray[2].name="Lorne";
CharDataArray[2].class=2;
CharDataArray[2].type="Rogue";
CharDataArray[2].portrait="lorne";
CharDataArray[2].portraitLG="lorneLG";
CharDataArray[2].level=1;
CharDataArray[2].xp=0;
CharDataArray[2].maxXp=40;
CharDataArray[2].hp=20;
CharDataArray[2].maxHp=20;
CharDataArray[2].aura=20;
CharDataArray[2].maxAura=20;
CharDataArray[2].cond="Healthy";
CharDataArray[2].attack=2;
CharDataArray[2].defense=1;
CharDataArray[2].crit=2;
CharDataArray[2].mysticAtk=3;
CharDataArray[2].mysticDef=2;
CharDataArray[2].vit=1;
CharDataArray[2].aur=1;
CharDataArray[2].range=1;
CharDataArray[2].str=1;
CharDataArray[2].luck=1;
CharDataArray[2].clan=0;
CharDataArray[2].hpBonus=0;
CharDataArray[2].atkBonus=0;
CharDataArray[2].upgradePoints=5;
CharDataArray[2].a1=11;
CharDataArray[2].a2=12;
CharDataArray[2].a3=13;
CharDataArray[2].a4=14;
CharDataArray[2].a5=15;
CharDataArray[2].a6=16;
CharDataArray[2].a7=17;
CharDataArray[2].a8=18;
CharDataArray[2].a9=19;
CharDataArray[2].a10=20;
CharDataArray[3].name="Aissa";
CharDataArray[3].class=3;
CharDataArray[3].type="Mage";
CharDataArray[3].portrait="aissa";
CharDataArray[3].portraitLG="aissaLG";
CharDataArray[3].level=1;
CharDataArray[3].xp=0;
CharDataArray[3].maxXp=80;
CharDataArray[3].hp=40;
CharDataArray[3].maxHp=40;
CharDataArray[3].aura=30;
CharDataArray[3].maxAura=30;
CharDataArray[3].cond="Healthy";
CharDataArray[3].attack=1;
CharDataArray[3].defense=1;
CharDataArray[3].crit=1;
CharDataArray[3].mysticAtk=5;
CharDataArray[3].mysticDef=2;
CharDataArray[3].vit=1;
CharDataArray[3].aur=1;
CharDataArray[3].range=1;
CharDataArray[3].str=1;
CharDataArray[3].luck=1;
CharDataArray[3].clan=0;
CharDataArray[3].hpBonus=0;
CharDataArray[3].atkBonus=0;
CharDataArray[3].upgradePoints=3;
CharDataArray[3].a1=21;
CharDataArray[3].a2=22;
CharDataArray[3].a3=23;
CharDataArray[3].a4=24;
CharDataArray[3].a5=25;
CharDataArray[3].a6=26;
CharDataArray[3].a7=27;
CharDataArray[3].a8=28;
CharDataArray[3].a9=29;
CharDataArray[3].a10=30;
}
int main()
{
setCharData();
const char * fileName = "fubar.dat";
FILE * WRITE = fopen(fileName, "w+b");
fwrite(&charData, sizeof(struct charData),1, WRITE);
fclose(WRITE);
return 0;
}
@spjackson: You are right the code does compile for an empty struct so the problem must be my data setup.
Bookmarks