PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C: einzelnes Zeichen an String anhängen


Dexter
2005-06-05, 19:18:55
hi,

ich sitzt seit stunden an einem problem, und als pacal verwöhnter werd ich wohl aus eigener kraft auch auf keine lösung kommen.

ich versuche ein einzelnes zeichen, dass ich zb beim durchlaufen eines strings gewonnen habe, an einen anderen string anzuhängen.

wenn ich jedoch zB strcat in der form strcat(s_neu, s_alt[i]) verwende, bekomm ich immer die compilermeldung: warning: passing arg 2 of `strcat' makes pointer from integer without a cast.

kann mir vielleicht jemand den lang ersehten hinweis geben, wie ich das ganze am besten mache?

Gruß Florian

zeckensack
2005-06-05, 19:33:26
strcat kopiert einen ganzen String, nicht nur ein einziges Zeichen.
Lösung mit strcat:
char cat_tmp[2]; //ein Zeichen, plus Terminator
cat_tmp[0]=s_alt[i];
cat_tmp[1]=0; //enorm wichtig das ist!

strcat(s_neu,cat_tmp);
Lösung ohne strcat:int dingens=strlen(s_neu); //Offset zum Anhängen finden
s_neu[dingens]=s_alt[i];
s_neu[dingens+1]=0; //wieder terminieren

Dexter
2005-06-05, 19:46:06
manchmal ists so einfach :rolleyes:
vielen dank für die schnelle hilfe :)