Strona 1 z 1

Jak wprowadzić plik tekstowy do napisanego programu w C ?

: 16 sty 2011, 14:16
autor: Heron
Witam, napisałem program konsolowy w C zliczający liczbę słów. Jak teraz mogę wprowadzić dla niego plik tekstowy *txt ? :/

Odp: Jak wprowadzić plik tekstowy do napisanego programu w C ?

: 16 sty 2011, 14:33
autor: ethanak
Heron pisze:Witam, napisałem program konsolowy w C zliczający liczbę słów. Jak teraz mogę wprowadzić dla niego plik tekstowy *txt ? :/

Kod: Zaznacz cały

man fopen
man fgets
man fread
man fstat
wystarczy lekturki?
Ogólnie jeśli chcesz cały plik wrzucić do programu:
a) przez fstat sprawdzasz wielkość pliku
b) przez malloc alokujesz pamięć (wielkość +1)
c) przez fopen/fread/fclose czytasz plik
d) wstawiasz 0 na koniec - czyli cos w stylu:

Kod: Zaznacz cały

cośtam[długość]=0
e) i teraz zapuszczasz swój algorytm zliczający słowa

Odp: Jak wprowadzić plik tekstowy do napisanego programu w C ?

: 16 sty 2011, 15:56
autor: Hauleth
Chyba mu chodzi jak przekierować na STDIN:

Kod: Zaznacz cały

./a.out < test.in > test.out
W pliku test.in umieszczasz dane wejściowe, a w pliku test.out otrzymasz wyjście programu

Odp: Jak wprowadzić plik tekstowy do napisanego programu w C ?

: 16 sty 2011, 16:02
autor: ethanak
Hauleth pisze:Chyba mu chodzi jak przekierować na STDIN:

Kod: Zaznacz cały

./a.out < test.in > test.out
Jeśli to było "do programu w C" to raczej nie przez stdin/stdout.
Pytanie kontrolne: zakładając że wątkotwórca jest początkujący w C, jak wprowadzisz cały plik z /dev/stdin? To akurat nie jest taka bardzo oczywista operacja...