[c] strcat

wodka

Grünschnabel
Hallo zusammen,

warum geht das nicht?

char str1[] ="abc";
char str2[] ="qwe";

strcat(str1[1], str2[2]);

irgendwie kriege ich ärger wegen unterschiedlichen Typen,
wie würde es richtig gehen??

vielen Dank
wodak
 
Ich denke mal, dass es daran liegt, dass Du der strcat-Funktion eigentlich keine Arrays sondern einzelne char-Werte übergibst. Sicher bin ich mir aber nicht ganz. :rolleyes:
 
Was willst Du den konkret machen?

abc + qwe = abcqwe?

oder

bc + e = bce?

Denn wenn Du str1[1] übergibst, beginnst Du bei b!
Für strcat musst Du die Strings terminieren!

char str1[] = "abc\0";
char str2[] = "qwe\0";

Besser wäre es wenn Du es so machen würdest.

Code:
char str1[10];
char str2[10];

strcpy(str1, "abc");
strcpy(str2, "qwe");
strcat(str1[1], str2[2]);

strcpy terminiert automatisch die Strings!
 

Neue Beiträge

Zurück