Als «c» getaggte Fragen

C ist eine universelle Programmiersprache, die für die Systemprogrammierung (Betriebssystem und eingebettet), Bibliotheken, Spiele und plattformübergreifende Programme verwendet wird. Dieses Tag sollte bei allgemeinen Fragen zur C-Sprache verwendet werden, wie in der Norm ISO 9899 definiert (die neueste Version, 9899: 2018, sofern nicht anders angegeben - auch tagversionsspezifische Anforderungen mit c89, c99, c11 usw. kennzeichnen). C unterscheidet sich von C ++ und sollte ohne einen rationalen Grund nicht mit dem C ++ - Tag kombiniert werden.

11
Wie lösche ich den Eingabepuffer in C?
Ich habe folgendes Programm: int main(int argc, char *argv[]) { char ch1, ch2; printf("Input the first character:"); // Line 1 scanf("%c", &ch1); printf("Input the second character:"); // Line 2 ch2 = getchar(); printf("ch1=%c, ASCII code = %d\n", ch1, ch1); printf("ch2=%c, ASCII code = %d\n", ch2, ch2); system("PAUSE"); return 0; } …
82 c  buffer 

10
Ist es sicher, argc und argv in der Hauptfunktion umzubenennen?
Viele Programme verwenden Standardnamen für eine Reihe von Argumenten und Zeichenfolgenarrays. Der Prototyp der Hauptfunktion sieht aus wie : int main(int argc, char *argv[]);. Aber würde ich etwas kaputt machen, wenn ich benutzerdefinierte Namen für diese Variablen wähle? Z.B int main(int n_of_args, char *args[]); Im Kontext des Compilers ist alles …
82 c++  c  main 

5
Konflikt zwischen einem Stanford-Tutorial und GCC
Laut diesem Film (ca. Minute 38) verwenden zwei Funktionen mit denselben lokalen Variablen denselben Speicherplatz. Also sollte das folgende Programm drucken 5. Kompilieren mit gccErgebnissen -1218960859. Warum? Das Programm: #include <stdio.h> void A() { int a; printf("%i",a); } void B() { int a; a = 5; } int main() { …

3
Wie gehe ich mit Symbolkollisionen zwischen statisch verknüpften Bibliotheken um?
Eine der wichtigsten Regeln und Best Practices beim Schreiben einer Bibliothek besteht darin, alle Symbole der Bibliothek in einen bibliotheksspezifischen Namespace zu stellen. C ++ macht dies aufgrund des namespaceSchlüsselworts einfach . In C besteht der übliche Ansatz darin, den Bezeichnern ein bibliotheksspezifisches Präfix voranzustellen. Die Regeln des C-Standards legen …

2
Wie genau funktioniert der Double-Stringize-Trick?
Mit mindestens einigen C- Präprozessoren können Sie den Wert eines Makros anstelle seines Namens stringisieren, indem Sie es über ein funktionsähnliches Makro an ein anderes übergeben, das es stringiert: #define STR1(x) #x #define STR2(x) STR1(x) #define THE_ANSWER 42 #define THE_ANSWER_STR STR2(THE_ANSWER) /* "42" */ Beispielanwendungsfälle hier . Dies funktioniert zumindest …

3
Was kann dazu führen, dass beim Befehl sock send () eine Ressource vorübergehend nicht verfügbar ist?
Was kann einen Resource temporarily unavailableFehler bei einem Socket- send()Befehl verursachen? Die Steckdose ist eingerichtet als AF_UNIX, SOCK_STREAM. Es funktioniert die meiste Zeit, aber gelegentlich wird dieser Fehler angezeigt. Das Empfangsende der Buchse scheint ordnungsgemäß zu funktionieren. Ich weiß, dass dies nicht sehr detailliert ist, aber ich suche nur nach …
82 c  linux  sockets  unix 



5
Wird snprintf () IMMER null beendet?
Ist snprintf immer null, um den Zielpuffer zu beenden? Mit anderen Worten, ist dies ausreichend: char dst[10]; snprintf(dst, sizeof (dst), "blah %s", somestr); oder musst du das so machen, wenn somestr lang genug ist? char dst[10]; somestr[sizeof (dst) - 1] = '\0'; snprintf(dst, sizeof (dst) - 1, "blah %s", somestr); …
82 c  posix  libc 

10
C nicht blockierende Tastatureingabe
Ich versuche, ein Programm in C (unter Linux) zu schreiben, das sich wiederholt, bis der Benutzer eine Taste drückt, aber keinen Tastendruck benötigt, um jede Schleife fortzusetzen. Gibt es eine einfache Möglichkeit, dies zu tun? Ich denke, ich könnte es möglicherweise damit machen, select()aber das scheint eine Menge Arbeit zu …


7
Analysieren von JSON mit C [geschlossen]
Geschlossen. Diese Frage entspricht nicht den Richtlinien für Stapelüberlauf . Derzeit werden keine Antworten akzeptiert. Möchten Sie diese Frage verbessern? Aktualisieren Sie die Frage so dass es beim Thema für Stack - Überlauf. Geschlossen vor 6 Jahren . Verbessere diese Frage Ich versuche einen guten Weg zu finden, um JSON …
82 c  json 


5
C - Funktion innerhalb der Struktur
Ich versuche eine Funktion innerhalb einer Struktur zu erstellen, bis jetzt habe ich diesen Code: typedef struct client_t client_t, *pno; struct client_t { pid_t pid; char password[TAM_MAX]; // -> 50 chars pno next; pno AddClient() { /* code */ } }; int main() { client_t client; //code .. client.AddClient(); } …
82 c  function  struct 

16
Standardwert für Strukturelement in C.
Ist es möglich, Standardwerte für ein Strukturelement festzulegen? Ich habe Folgendes versucht, aber es würde einen Syntaxfehler verursachen: typedef struct { int flag = 3; } MyStruct; Fehler: $ gcc -o testIt test.c test.c:7: error: expected ‘:’, ‘,’, ‘;’, ‘}’ or ‘__attribute__’ before ‘=’ token test.c: In function ‘main’: test.c:17: …
82 c  struct 

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.