anoniem Geplaatst: 10 augustus 2002 Delen Geplaatst: 10 augustus 2002 Hoi, Ik wil in C met read 1 teken inlezen uit een bestand, maar als ik dat doe krijg ik een @ terug, oftewel, aan mijn char word niet veranderd [code:1:ff187deafd] int file; char mychar; file = fopen("file.txt", "r"); read(file, &mychar, 1); fclose(file); $test @ $ [/code:1:ff187deafd] Wat doe ik fout? scanf(file, "%c", &mychar); werkt wel.... Barry Quote Link naar reactie
anoniem Geplaatst: 14 augustus 2002 Auteur Delen Geplaatst: 14 augustus 2002 :lol: , ik weet het ;) : fopen = highlevel , read = lowlevel open is wel lowlevel maar niet gebufferd, zie mijn andere vraag Barry Quote Link naar reactie
anoniem Geplaatst: 14 augustus 2002 Auteur Delen Geplaatst: 14 augustus 2002 Een gokje (weet het niet zeker): [code:1:330967b894] read(filepointer, &myChar, sizeof(myChar)); [/code:1:330967b894] Quote Link naar reactie
anoniem Geplaatst: 15 augustus 2002 Auteur Delen Geplaatst: 15 augustus 2002 marcelk heeft het goed. Ik heb je vertelt dat een file een aaneengesloten block van bytes is. Hij moet dus wel weten wanneer de file eindigt, dat weet hij niet uit zichzelf. Vandaar dat je sizeof() functie moet gebruiken. Probeer ff wat API documentatie te vinden, want dit werkt in het begin erg frustrerend. (geloof me! ;) ) Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen