Hi, wie setzt man ein Array in C komplett zu Null? also z.B.: char array[10]= ???
Da du ein char Array hast, gehe ich mal davon aus, dass es sich um Textverarbeitung, also Strings handelt array[0] = '\0'; reicht völlig. Laut Definition hört ein String dort auf, wo das '\0' Zeichen ist. Ist es ganz vorne, dann ist der String leer.
> wie setzt man ein Array in C komplett zu Null? ^^^^^ ^^^^^^^^ memset() hülft. > C-String zu Null setzen ^^^^^^ Erstes Element auf 0 setzen. Oder memset().
Alles klar, sowas habe ich hier schon geschrieben, nur war ich mit der Lösung nicht ganz einverstanden, weil etwas merkwürdig aussieht !!
Klaus schrieb: > Alles klar, sowas habe ich hier schon geschrieben, nur war ich mit der > Lösung nicht ganz einverstanden, weil etwas merkwürdig aussieht !! Was sieht daran merkwürdig aus? So funktioniert nun mal Stringverarbeitung in C. Wenn du willst kannst du dir ja eine Funktion machen
1 | void strclr( char * s ) |
2 | {
|
3 | *s = '\0'; |
4 | }
|
5 | |
6 | |
7 | int main() |
8 | {
|
9 | char buffer[80]; |
10 | char output[80]; |
11 | |
12 | strcpy( buffer, "Hallo world" ); |
13 | strcpy( output, buffer ); |
14 | strclr( buffer ); |
15 | }
|
siehts jetzt weniger merkwürdig in der Verwendung aus? :-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.