Jo hab n kleines Problem:
Code:
//Dateigroesse rausfinden
char sTemp;
int lFileSize = 0;
fstream f;
f.open("C:/test.dat", ios::in);
while(!f.eof())
{
f.read(&sTemp, 1);
lFileSize++;
}
//1 abziehen (letztes Zeichen ist whitespace)
lFileSize--;
//Groesse des Arrays cstring setzen
char *cstring = new char(lFileSize);
//lFileSize ausgeben = 3
cout << lFileSize << endl;
//Groesse des Arrays cstring ausgeben = 4 ?!?
cout << sizeof(cstring) << endl;
Der Inhalt der Datei test.dat ist 3 Zeichen lang (Inhalt: abc) aber mein Array cstring ist anstatt 3 Zeichen 4 Zeichen langQuote:
3
4
Ich raffs nicht wirklich, da lFileSize ja eigentlich nicht 4 ist, sondern 3. Da ich später die Datei einlese und den ASCII-Wert jedes Zeichens ausgeb kommt es spätestens dann zu Fehlern.
Was mach ich falsch?!?
€dit:
Ich Idiot
Jetzt auch draufgekommen, dass ich die größe eines Arrays auf das ich zeige so nicht auslesen kann, bitte closen!






