token1 = strtok(udtAddressVar.strName, " ");
strcpy(udtAddressVar.strFirstName, token1);
token1 = strtok(NULL, " ");
strcpy(udtAddressVar.strMiddleName, token1);
token1 = strtok(NULL, " ");
strcpy(udtAddressVar.strLastName, token1);
diesen Code verwenden, aber es schlägt fehl, wenn es keinen Mittelweg Name ist. Zum Beispiel arbeitet für ‚John Henry Blue‘ fein und nicht für ‚Brad Henry‘Split char-Array als Vorname, zweiter Vorname und Nachname, überspringen zweiter Vorname, wenn seine leer in der Sprache C
Haben Sie versucht, einen Standardwert für jede Variable festzulegen? Ich meine, StrFirstName, StrMiddleName und StrLastName im Anfang hat NULL-Werte, versuchen Sie, alle von ihnen zu einer leeren Zeichenfolge wie "" zu initialisieren, weil ich denke, dass Sie einen Fehler erhalten, weil Sie eine Null in den Parameter setzen. –
Sie werden alle als leere Zeichenfolgen initialisiert. – Coder