Was sind einige Fehler, die Sie in C-APIs verrückt machen (einschließlich Standardbibliotheken, Bibliotheken von Drittanbietern und Header innerhalb eines Projekts)? Ziel ist es, API-Design-Fallstricke in C zu identifizieren, damit Benutzer, die neue C-Bibliotheken schreiben, aus Fehlern der Vergangenheit lernen können.
Erklären Sie, warum der Fehler schlecht ist (vorzugsweise anhand eines Beispiels), und schlagen Sie eine Verbesserung vor. Obwohl Ihre Lösung im wirklichen Leben möglicherweise nicht praktikabel ist (es ist zu spät, um strncpy
sie zu beheben ), sollte sie künftigen Bibliotheksautoren den Kopf zerbrechen.
Obwohl der Schwerpunkt dieser Frage auf C-APIs liegt, sind Probleme, die sich auf Ihre Fähigkeit auswirken, sie in anderen Sprachen zu verwenden, willkommen.
Bitte geben Sie einen Fehler pro Antwort an, damit die Demokratie die Antworten sortieren kann.
malloc
Zeichenfolge es beheben würde. Ich denke, ein gutes Beispiel mit der ersten Antwort könnte dieser Frage wirklich helfen, Erfolg zu haben. Vielen Dank!