EOF on määritelty stdio.h kirjastossa ja tulostaessa arvo on -1. Ongelmana on for tai while -lause, jossa lause suoritetaan jos ehto erisuuri kuin EOF. Mitä pitää syöttää että silmukasta pääsee pois? -1 ei lopeta silmukkaa.
EOF
kodari
4165
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 4
Vanhimmat
0 lopettaa sen silmukan
EOF ei oiken toimi stdin:n kanssa, muiden tiedostojen kanssa kylläkin.
Joten ehkä gets on se mitä haluat...
EOF stdinissä on järjestelmäkohtainen, tavallisimmin Ctrl D tai Ctrl Z.
Ööö... jaa, mutta vastaus löytyy tuolta:
http://faq.cprogramming.com/cgi-bin/smartfaq.cgi?id=1043284351&answer=1048865140
EOF:n -1 on siis int-tyyppiä, sinä kai vertaat char-tyypin -1:een.
Silmukasta pääsee ulos break-käskyllä jos ei muuta keksi.