|
Titlul: Sfârșitul unui fișier Scris de: Robert Badea din Ianuarie 12, 2011, 21:03:49 Dragi prieteni :D
De ieri seară mă chinui să îmi dau seama cum aflu când se termină un fișier și nu prea am avut succes. De specificat: - deschid fișierul de intrare cu freopen - folosesc scanf pentru citire, am câte doi întregi pe linie, separați de un spațiu exp: 23 3 - introduc întregii într-o strucutră care conține 2 vectori, pe exemplu de mai sus ar fi t.a=23 și t.b=3 - trebui să le citesc pe toate și nu știu condiția de terminare a fișierului. Vreo recomandare? sau poate altă funcțite asemănătoare cu scanf în care să pot specifica fișierul de unde se citește. Titlul: Răspuns: Sfârșitul unui fișier Scris de: Mihai Calancea din Ianuarie 12, 2011, 21:17:25 Scanf ia valoarea -1 daca nu mai are ce citi, din cate tin minte.
Poti incerca ceva in genul for ( ; scanf( ceva ) != -1 ; ) { etc; } Titlul: Răspuns: Sfârșitul unui fișier Scris de: Robert Badea din Ianuarie 12, 2011, 21:28:00 Să trăiești cât vrei tu! Mersi mult, eu tot puneam condiția de scanf să fie 0.
:D Titlul: Răspuns: Sfârșitul unui fișier Scris de: Pripoae Teodor Anton din Ianuarie 12, 2011, 23:45:44 Scanf returneaza numarul de argumente citite. Daca tu citesti 2 numere ar trebui sa iti returneze 2. Daca nu returneaza 2 a intervenit o eroare.
Titlul: Răspuns: Sfârșitul unui fișier Scris de: CHERA Laurentiu din Ianuarie 16, 2011, 00:19:42 Cod: while(!feof(in)) LE: scuze nu am fost atent; pt freopen folosesti stdin in loc de in; Succes! |