Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Oman muuttujatyypin tallennus suoraan tiedostoon

Gaxx [23.05.2005 18:14:06]

#

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);

sqwiik [23.05.2005 18:27:35]

#

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);

Gaxx [23.05.2005 18:41:38]

#

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.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta