C언어/string.h

[C언어] strlen 함수 (문자열 길이 확인 함수)

아무일도없었다 2022. 9. 14. 19:05

사용범위

Windows, Unix 등 모든 OS에서 사용가능한 표준 API 함수

기능

C언어 표준 함수로 문자열의 길이를 구하는데 사용한다.

헤더

#include <string.h>

※ strlen 함수 사용시 string.h 파일을 include 하지 않는다면 컴파일시 error 발생 ※


함수

size_t strlen(const char* str);

파라미터

  • const char* str
    • 길이를 구하려는 문자열을 입력한다.
    • NULL 문자로 종료되는 문자열을 입력해야 한다.

반환값 (return)

NULL 문자를 제외한 string 의 길이를 반환한다.

잡학지식

strlen 으로 byte array 의 길이를 구할때는 각별한 주의가 필요하다. NULL 문자로 종료가 안되는 경우도 다반사이기도 한데 byte array 에서 나오는 ASCII 값도 출력이 안되는 문자여도 길이로 인식하기 때문이다.


 

<소스 코드>

#include <stdio.h>

int main() {
    char buffer[] = "Hello strlen";
    size_t ret;

    ret = strlen(buffer);

    printf("buffer[%s] --> length[%u]\n", buffer, (unsigned int)ret);

    return 0;
}

 

※ 실행 결과

buffer[Hello strlen] --> length[12]

 

반응형