Ja, c[i]=''ist kein gültiger Code. Wir klammern die Zeichenkonstante zwischen ' ', z . B. c[i] = 'A';char A. aber du schreibst kein Zeichen dazwischen ''.
Leerer Speicherplatz ist nichts anderes als angenommen, wenn Sie Speicherplatz zuweisen möchten, gehen Sie wie folgt vor:
c[i] = ' ';
Wenn Sie zugewiesen werden nul charmöchten, tun Sie Folgendes:
c[i] = '\0';
Beispiel: Angenommen, c[]eine Zeichenfolge (kein \0terminiertes Zeichenarray), wenn Sie eine Zeichenfolge haben. zum Beispiel:
char c[10] = {'a', '2', 'c', '\0'};
Und Sie ersetzen das zweite Zeichen durch Leerzeichen :
c[1] = ' ';
und wenn Sie es mit printf wie folgt drucken:
printf("\n c: %s", c);
dann wäre die Ausgabe:
c: a c
Und Sie ersetzen das zweite Zeichen durch '\ 0' :
c[1] = '\0';
dann wäre die Ausgabe:
c: a
weil Zeichenfolge mit beendet \0.
c[i]ein Leerzeichen ersetzen oder möchten Sie dieses Zeichen aus dem Array "entfernen", wie Sie es in einem Editor tun würden, wenn Sie die Rücktaste drücken (dh möchten Sie die Zeichen c [i-1] und c [)? i + 1] nach der Operation benachbart werden)?