18. august 2009 - 21:19Der er
12 kommentarer og 1 løsning
I/O og EOF
Hej
Jeg har to bøger om C.
I den ene står der, at hvis man har åbnet en fil i binary-mode, da kan en "integer value equal to the EOF mark be read, which would cause the routine just given to indicate an EOF condition even though the physical EOD had not been reached".
I den anden står der, at i en binær datastrøm er der fuld overensstemmelse mellem de bytes, der sendes og modtages.
Jeg tolker de to ovenstående citater for værende modstridende med hinanden. Hvad er sandt?
Haha, det er en bog af Schildt :-). Jeg synes faktisk han beskriver tingene ret godt. Du anbefaler måske en anden bog til at lære C/C++ fra? Hvis ja, hvilken?
Ok, men i så fald kan man også "fange" en "falsk" EOF i binary mode?
Ok, jeg skal lige forstå det med binary/text mode før du får point.
I text-mode kan man komme til at læse en "falsk" EOF, idet man kan læse en byte med værdien 26. I binary-mode kan man være sikker på, at når man læser en byte med værdien 26, så er det EOF?
fgetc returnerer -1 ved EOF, saa man kan sagtens detecte det.
Men der er ikke mulighed for en kunstig EOF i filens content.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.