Apa beberapa kelemahan yang membuat Anda gila di API C (termasuk perpustakaan standar, perpustakaan pihak ketiga, dan header di dalam proyek)? Tujuannya adalah untuk mengidentifikasi perangkap desain API di C, sehingga orang yang menulis perpustakaan C baru dapat belajar dari kesalahan di masa lalu.
Jelaskan mengapa cacatnya buruk (sebaiknya dengan contoh), dan cobalah untuk menyarankan perbaikan. Meskipun solusi Anda mungkin tidak praktis dalam kehidupan nyata (ini sudah terlambat untuk diperbaiki strncpy
), solusi ini harus memberi kesempatan bagi penulis perpustakaan di masa depan.
Meskipun fokus dari pertanyaan ini adalah API C, masalah yang memengaruhi kemampuan Anda untuk menggunakannya dalam bahasa lain dipersilahkan.
Tolong beri satu cacat per jawaban, sehingga demokrasi dapat mengurutkan jawaban.
malloc
string akan memperbaikinya. Saya pikir memberikan contoh yang baik dengan jawaban pertama bisa sangat membantu pertanyaan ini berkembang. Terima kasih!