Heim > Artikel > Backend-Entwicklung > Wie konvertiere ich einen C-String in ein Zeichenarray?
Konvertieren von Zeichenfolgen in Zeichenarrays in C
In C müssen Sie möglicherweise eine Zeichenfolge in ein Zeichenarray konvertieren (char[ ]) anstelle eines Zeichenzeigers (char*). So können Sie dies erreichen:
Sie können eine Zeichenfolge mit der Funktion strcpy wie folgt in ein Zeichenarray konvertieren:
string temp = "cat"; char tab2[1024]; strcpy(tab2, temp.c_str());
Um die Speichersicherheit zu gewährleisten, empfiehlt es sich, zum Kopieren strncpy zu verwenden eine begrenzte Anzahl von Zeichen:
string temp = "cat"; char tab2[1024]; strncpy(tab2, temp.c_str(), sizeof(tab2)); tab2[sizeof(tab2) - 1] = 0;
Wenn Sie die dynamische Speicherzuweisung bevorzugen, können Sie Speicher für das Zeichenarray zuweisen und die Zeichenfolgendaten kopieren:
string temp = "cat"; char * tab2 = new char [temp.length()+1]; strcpy (tab2, temp.c_str());
Indem Sie die folgenden Schritte ausführen , können Sie eine Zeichenfolge in C effektiv in ein Zeichenarray konvertieren und dabei eine angemessene Speicherverwaltung und Sicherheitsaspekte gewährleisten.
Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen C-String in ein Zeichenarray?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!