C API (표준 라이브러리, 타사 라이브러리 및 프로젝트 내부의 헤더 포함)에서 문제를 일으키는 몇 가지 결함은 무엇입니까? 목표는 C에서 API 디자인의 함정을 식별하여 새로운 C 라이브러리를 작성하는 사람들이 과거의 실수로부터 배울 수 있도록하는 것입니다.
결함이 왜 나쁜지 설명하고 (예를 들어서 바람직 함) 개선을 제안하려고합니다. 귀하의 솔루션이 실제 환경에서는 실용적이지 않을 수도 있지만 (해결하기에는 너무 늦습니다 strncpy
), 미래의 도서관 작가에게 머리를 기울여야합니다.
이 질문의 초점은 C API이지만 다른 언어로 사용하는 데 영향을주는 문제는 환영합니다.
답변 당 하나의 결함을 제시하여 민주주의가 답변을 정렬 할 수 있습니다.
malloc
'd 문자열이 어떻게 고칠 지 설명하십시오. 첫 번째 대답으로 좋은 모범을 보이는 것이이 질문이 번성하는 데 실제로 도움이 될 수 있다고 생각합니다. 감사!