Quali sono alcuni difetti che ti fanno impazzire nelle API C (incluse librerie standard, librerie di terze parti e intestazioni all'interno di un progetto)? L'obiettivo è identificare i problemi di progettazione dell'API in C, così le persone che scrivono nuove librerie C possono imparare dagli errori del passato.
Spiega perché il difetto è cattivo (preferibilmente con un esempio) e cerca di suggerire un miglioramento. Anche se la tua soluzione potrebbe non essere pratica nella vita reale (è troppo tardi per correggere strncpy
), dovrebbe dare un vantaggio ai futuri scrittori di librerie.
Sebbene il focus di questa domanda siano le API C, i problemi che riguardano la tua capacità di usarli in altre lingue sono i benvenuti.
Per favore, dai una pecca per risposta, in modo che la democrazia possa ordinare le risposte.