Wer weiß, wie man in Strings kopieren? Weil ich die Funktion strcpy benutzt habe, aber wenn ich das Ergebnis drucke, zeigt es seltsame Zeichen. Ich möchte 'Name' + '@' + 'E-Mail' verketten. Mit scanf muss ich das Zeichen null '\ 0' setzen?Vector Char seltsame Zeichen
#include <stdio.h>
#include <string.h>
int main(){
char message[150];
char name[150];
char mail[150];
char result[150];
printf("Introduce name: \n");
scanf("%s",message);
printf("Introduce email \n");
scanf("%s",server);
strcpy(result,message);
result[strlen(result)]='@';
strcpy(&result[strlen(result)],server);
printf("RESULT: %s\n",result);
return 0;
}
'result [strlen (result)] = '@';' löscht den 0-Terminator der Zeichenkette. Hast du 'strcat' probiert? – mch
Es hängt auch davon ab, was "Server" ist und ob Sie den Puffer "Ergebnis" überlaufen. –
'snprintf (Ergebnis, Größe des Ergebnisses,"% s @% s ", Nachricht, Server);', auch 'char Mail [150];' -> 'char Server [150];' – BLUEPIXY