Hjælp til at gemme tekst i var. (100 p)

Tags:    c++

Hej, jeg har et program hvor man skal skrive det samme mange steder - dog med små ændringer - derfor har jeg lavet denne funktion men kan ikke få den til at virke :-(

Fold kodeboks ind/udKode 




10 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato



[Redigeret d. 04/07-05 20:20:19 af Bertel Brander]



Man kan ikke returnere et char array fra en funktion.
<< virker kun med stream.

Man kunne lave det med:

Fold kodeboks ind/udKode 




Man kunne også:

Fold kodeboks ind/udKode 




Man kan ikke returnere et char array fra en funktion.
<< virker kun med stream.

Man kunne lave det med:

Fold kodeboks ind/udKode 


Kan du forklare lidt om de forskellige ting?
Hvad betyder std::stringstream sentens;?
Hvorfor siger du sentens << i stedet for sentense = ?
Hvorfor sentens.str(); ?
og hvorfor endl (Kan man ikke lige så godt skrive \\n?



Man kunne også:

Fold kodeboks ind/udKode 


Hvad gør funktionen strcpy?



En stringstream er en stream på samme måde som cout og filer er streams, dvs. du kan bruge << til at skrive til dem. En stringstream gemmer i en string, denne kan du få fat i med .str()

For normale text streams man man godt bruge '\\n', men det korrekte er at bruge endl. (I "gamle" dage brugte man altid '\\n')



strcpy kopierer strenge fra et char array til et andet. (eller mellem char *)

.c_str() giver dig en string som en char *, med 0 terminering.



Nu virker det hele endnu engang tak.

Hvordan giver man point?



Hay
Du kan også bruge "sprintf". Istedet for string kunne du gøre følgende:

char str[]="Alt det tekst der skal være";
char *str1;
str1=new char[(strlen(str))]; // Opretter plads
sprintf(str1,"%s",str);

// Kode der gør det der skal gøres
delete []str1; // Sletter oprettet plads

Janus S. Andersen



Tak for hjælp



t