Als «c-strings» getaggte Fragen


9
'\ 0' und printf () in C.
In einem Einführungskurs in C habe ich gelernt, dass beim Speichern die Zeichenfolgen \0am Ende mit Nullzeichen gespeichert werden . Aber was ist, wenn ich eine Zeichenfolge drucken wollte? Sagen Sie, printf("hello")obwohl ich festgestellt habe, dass dies nicht mit \0der folgenden Anweisung endet printf("%d", printf("hello")); Output: 5 Dies scheint jedoch …
21 c  printf  stdout  c-strings 




2
Warum zerfällt ein leeres String-Literal in einem mehrdimensionalen Array in einen Nullzeiger?
Ich möchte ein mehrdimensionales C-String-Array definieren, das durch mehrere String-Literale initialisiert wird. In C würde ich folgendes tun: #include <stdio.h> const char *strArr[2][1] = { {"foo"}, {""}}; int main(void) { printf("%p\t%p\n", strArr[0][0], strArr[1][0]); return 0; } Kompilieren mit gcc -std=c18 -pedantic test.cund Ausführen von Ergebnissen in: $ ./a.out 0x55d95410f004 0x55d95410f008 …
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.