문자열이 null로 종료되는 이유는 무엇입니까?또는: null-terminal vs. 문자 + 길이 저장 나는 C에서 언어 통역사를 쓰고 있고, 나의.string유형에 a가 포함되어 있습니다.length속성은 다음과 같습니다. struct String { char* characters; size_t length; }; 이 때문에 C에는 이런 종류의 문자열을 지원하는 기능이 내장되어 있지 않기 때문에 나는 통역사에서 많은 시간을 수동으로 처리해야 합니다.기본적인 C를 준수하기 위해 단순한 null-terminated 문자열로 전환하는 것을 고려했지만, 다음과 같이 하지 않을 이유가 많은 것 같습니다. Null을 찾는 대신 "length"를 사용하는 경우 경계 검사가 기본 제공됩니다. 문자열의 길이를 찾기 ..