Als «c» getaggte Fragen

C ist eine universelle Computerprogrammiersprache, die für Betriebssysteme, Spiele und andere Hochleistungsarbeiten verwendet wird.

3
Wann sollte eine Triggerfunktion mit einem Gradargument -0.0 zurückgeben?
Bei der Erstellung trigonometrischen Funktionen my_sind(d), my_cosd(d), my_tand(d), dass ein gewisses Maß Argument , anstatt eine Radiant ein verwendet und genaue Antworten auf ein Vielfaches von 90 vorgesehen ist , bemerkte ich , dass das Ergebnis war manchmal -0.0nicht 0.0. my_sind( 0.0) --> 0.0 my_sind(-0.0) --> -0.0 my_sind(180.0) --> -0.0 …
10 c  math 

2
Richtige Handhabung von EINTR in Bibliotheken
Was ist die empfohlene Etikette EINTRin Bibliotheken? Ich schreibe derzeit eine Funktion, die einige Dateisystemaufgaben mit der POSIX-API ausführt, aber viele der von mir verwendeten Aufrufe können möglicherweise zurückgegeben werden EINTR. Darüber hinaus kann die Funktion unter bestimmten Umständen blockieren. (Für Interessierte implementiert es einen Verriegelungsmechanismus.) Um dies so allgemein …
10 c  libraries  signals  posix 

3
Ist Clang / LLVM bereit für die Hauptsendezeit? [geschlossen]
Diese Frage passt derzeit nicht zu unserem Q & A-Format. Wir erwarten, dass die Antworten durch Fakten, Referenzen oder Fachwissen gestützt werden, aber diese Frage wird wahrscheinlich zu Debatten, Argumenten, Umfragen oder erweiterten Diskussionen führen. Wenn Sie der Meinung sind, dass diese Frage verbessert und möglicherweise erneut geöffnet werden kann, …


1
Idiomatisches Umbrechen der C ++ - Vorlagentyp-API in C.
Ich arbeite daran, eine C ++ - API zu verpacken, die den Zugriff auf einen Datenspeicher (Hazelcast) in C-Funktionen ermöglicht, damit auf den Datenspeicher auch über C-only-Code zugegriffen werden kann. Die Hazelcast C ++ - API für die Map-Datenstruktur sieht folgendermaßen aus: auto map = hazelcastClient->client->getMap<int, string>(mapName); map.put(key, value); Es …
9 c++  c  api-design 



5
Was bedeutet es, eine volatile Variable zu deklarieren?
Viele Low-Level-Programme verwenden das flüchtige Schlüsselwort für Typen für die Speicherzuordnung und dergleichen, aber ich bin irgendwie verwirrt darüber, was es WIRKLICH im Hintergrund tut. Mit anderen Worten, was bedeutet es, wenn der Compiler die Speicheradresse nicht "wegoptimiert"?
9 c++  c  low-level 


4
Das Weglassen von "Destruktoren" in C bringt YAGNI zu weit?
Ich arbeite an einer mittelgroßen eingebetteten Anwendung in C mit OO-ähnlichen Techniken. Meine "Klassen" sind .h / .c-Module, die Datenstrukturen und Funktionszeigerstrukturen verwenden, um Kapselung, Polymorphismus und Abhängigkeitsinjektion zu emulieren. Nun würde man erwarten, dass eine myModule_create(void)Funktion mit einem myModule_destroy(pointer)Gegenstück kommt. Da das Projekt eingebettet ist, sollten die Ressourcen, die …


2
Was ist der Grund für den C-Standard, die Konstanz rekursiv zu berücksichtigen?
Der C99-Standard sagt in 6.5.16: 2: Ein Zuweisungsoperator muss einen modifizierbaren Wert als linken Operanden haben. und in 6.3.2.1:1: Ein modifizierbarer Wert ist ein Wert, der keinen Array-Typ hat, keinen unvollständigen Typ hat, keinen const-qualifizierten Typ hat und, wenn es sich um eine Struktur oder Vereinigung handelt, kein Mitglied hat …
9 design  c 

1
Makro vs. statische Funktionen in der Kopfzeile
Für viele schnelle Aufgaben, bei denen eine Funktion verwendet werden kann f(x,y), werden in einfachem C Makros verwendet. Ich möchte speziell nach diesen Fällen fragen, die durch einen Funktionsaufruf lösbar sind (dh Makros, die für Inlining-Funktionen verwendet werden, nicht für die Code-Erweiterung von beliebigem Code). Normalerweise sind C-Funktionen nicht inline, …
9 c 

6
Sollte mein Team einen allgemein anerkannten Codierungsstandard als Grundlage für seinen eigenen verwenden?
Das Forschungs- und Entwicklungsteam, in dem ich bin, hat beschlossen, einen Codierungsstandard einzuführen. Wir haben uns erst vor kurzem gebildet und haben zu wenig Code und eigene gemeinsame Codierungszeit, um unser Dokument zu Standards / Konventionen auf die organischen Entwicklungen in unserem Team und auf gute Beispiele aus unserem eigenen …

3
Begründung für C-Bibliotheksfunktionen, die errno niemals auf Null setzen
Der C-Standard schreibt vor, dass keine C-Standardbibliotheksfunktionen errnoauf Null gesetzt werden dürfen. Warum genau ist das so? Ich könnte verstehen, dass es nützlich ist, mehrere Funktionen aufzurufen und erst errnonach der letzten zu überprüfen - zum Beispiel: errno = 0; double x = strtod(str1, NULL); long y = strtol(str2, NULL); …
9 c  standards 

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.