Fråga
Efter att ha börjat med C++ efter ett längre avbrott så hittar jag min gamla testkod där jag försökte lära mig pekare och filhantering som aldrig kompilerade. Efter mycket jobb och kontroll så har jag fått iväg alla kompileringsfel förutom två som verkligen inte ger med sig. Så jag undrar om du skulle kunna titta på min kod och förklara vad jag gör för fel. På så sätt borde jag nog kunna starta upp med pekare igen.
(Kod borttagen)
Svar
Hej Karl!
Du har missat att argumentet till ifstream är en c-sträng och inte en std::string, den här sidan innehåller mer information,
http://www.cplusplus.com/reference/iostream/ifstream/ifstream.html
Nedan följer ändringarna
junk<< ”.n.txt”;
string name;
junk>> name;
– ifstream sodukin (name);
+ ifstream sodukin (name.c_str());
junk<< fragaval;
junk<< ”.d.txt”;
junk>> name;
– ifstream sodukdef (name);
+ ifstream sodukdef (name.c_str());
for (looptool2 = 0; looptool2 <=9;looptool2++) {
for (looptool = 0; looptool <=9;looptool++) {
sodukin>> editsoduk [looptool2]
[looptool];
…
// loop o main under
}
}
-}
OBS! Ett blockslut skall plockas bort från koden.
Lycka till!