Tämän kertainen kysymykseni kuuluu: Kuinka tallennan itse määrittelemäni tyyppisen muuttujan suoraan tiedostoon?
Tämä tarkoittaa sitä, että minun ei tarvitsisi kopioida sitä ensin char merkkijonoon.
Olen yrittänyt seuraavan laisia temppuja, mutta kumpikaan ei toiminut:
FILE *file; //Avataan tiedosto... memcpy(&muuttuja, file, 12); //...
Toinen, vähän epätoivoisempi yritys:
fprintf(file, "%12", muuttuja);
Käytä fwrite-funktiota.
fwrite(osoitin dataan, yhden osan koko, osien lukumäärä, tiedostoosoitin);
Esim.
typedef struct{ int a1, a2, a3; }rakenne; muuttuja kasa; FILE * file; fopen jne fwrite(&kasa, sizeof(rakenne), 1, file);
Kiitos! Ja taas kerran tietoni c/c++:n ihmeellisestä maailmasta lisääntyi yhden funktion verran :)
Edit: Jaha, näkyy tuolla putkan c-oppaassa tuosta funktiosta olla maininta, mutta ei sitten sen enempää — ei edes parametrejä. Saahan nuo toki selville otsikkotiedostoja tutkimalla.
Aihe on jo aika vanha, joten et voi enää vastata siihen.