Hi;
ich habe ein Verständnis Problem:
Wenn ich
char test [20] = „Hallo“;
schreibe, habe ich ein Feld von 20 Zeichen, also ein String in dem
Hallo/0 steht und im Rest des Feldes steht irgendetwas.
Soweit gut, aber wenn ich schreibe
Char *test= „Hallo“;
habe ich doch ein Pointer auf ein char.
Und = „Hallo „ schreibt mir H auf den Speicherplatz allo/0 auf die nachfolgenden Speicherplätze . Ist das Richtig?
Aber wo steht das denn? Muss ich nicht noch mit new Speicher zuweisen?
Es funktioniert aber ohne.
Ich wollte es so mache:
in main
open("test");
die Funktion open.
Open(char* szFileName)
.
.
sprintf (m_szFileName, "%s", szFileName );
.
.
Geht aber nicht!
Also, wie ist das mit dem Char *test?
Danke im Voraus
Nero4444
ich habe ein Verständnis Problem:
Wenn ich
char test [20] = „Hallo“;
schreibe, habe ich ein Feld von 20 Zeichen, also ein String in dem
Hallo/0 steht und im Rest des Feldes steht irgendetwas.
Soweit gut, aber wenn ich schreibe
Char *test= „Hallo“;
habe ich doch ein Pointer auf ein char.
Und = „Hallo „ schreibt mir H auf den Speicherplatz allo/0 auf die nachfolgenden Speicherplätze . Ist das Richtig?
Aber wo steht das denn? Muss ich nicht noch mit new Speicher zuweisen?
Es funktioniert aber ohne.
Ich wollte es so mache:
in main
open("test");
die Funktion open.
Open(char* szFileName)
.
.
sprintf (m_szFileName, "%s", szFileName );
.
.
Geht aber nicht!
Also, wie ist das mit dem Char *test?
Danke im Voraus
Nero4444