Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C 프로그램의 문자열에 대한 strlen()과 sizeof()의 차이점

<시간/>

프로그래밍에서 문자열은 문자 모음으로 정의될 수 있다는 것을 알고 있습니다. 이제 문자열을 만드는 데 사용되는 문자 수를 찾아야 하는 요구 사항에 대해 C는 strlen() 및 sizeof()의 두 가지 접근 방식을 제공합니다.

위에서 언급했듯이 이 두 방법 모두 대상 피연산자의 길이를 찾는 데 사용되지만 내부 구현을 기반으로 두 가지의 기본적인 차이점은 다음과 같습니다.

Sr. 아니요. strlen() sizeof()
1 정의 strlen()은 C에서 string.h라는 헤더 파일에 정의된 미리 정의된 함수입니다. 반면에 sizeof()는 단항 연산자이며 미리 정의된 함수가 아닙니다.
2 구현 strlen은 주로 null 값을 제외한 문자열의 문자 수를 계산하므로 내부적으로 구현됩니다. 즉, null 종료 문자열의 길이를 반환합니다. sizeof는 모든 유형의 데이터(할당됨)의 실제 크기를 바이트(null 값 포함)로 계산하는 방식으로 구현됩니다.
3 널 처리 strln은 null을 제외하고 string의 전체 길이 계산에 포함하지 않습니다. 반면에 sizeof는 변수의 값에 신경 쓰지 않고 모든 유형의 데이터(할당된)의 실제 크기를 바이트로 계산합니다(null 값 포함).