Hei, minun pitäisi testata tekemääni ohjelmaa ja testien aikana syntyneet ohjelman tulostukset on tallennettava tiedostoon. Kaikki mitä ohjelman käyttäjä syöttää ohjelmaan olen saanut kirjoitettua tiedostoon, mutta miten saan tulosteet myös sinne?
Kiitos.
Jos ohjelma kirjoittaa standarditulosteeseen, voi tulosteen ohjata tiedostoon useimmissa komentotulkeissa >
-merkillä. Vastaavasti <
-merkillä voi antaa ohjelmalle syötteen.
# ohjelma lukee käyttäjältä syötettä. tuloste tallennetaan tiedostoon tuloste.txt ./ohjelma >tuloste.txt # tiedoston syöte.txt sisältö annetaan ohjelmalle syötteenä. tuloste tallennetaan tiedostoon tuloste.txt ./ohjelma <syöte.txt >tuloste.txt
Yllä kuvattu tapa on yleensä paras. Jos tämä on jostain syystä pakko tehdä itse ohjelmassa, voit ohjata tulosteen ohjelman alussa näin:
freopen("tuloste.txt", "w", stdout);
Tiedosto olisi silloin myös hyvä sulkea ohjelman lopussa:
fclose(stdout);
Aihe on jo aika vanha, joten et voi enää vastata siihen.