IT 프로그래밍

[따배시] 4.4 strlen() 함수

기술1 2024. 1. 5. 10:48

strlen() 문자열의 길이를 출력해주는 함수를 배웠다.

 

 

실행코드

#include <stdio.h>
#include <string.h>

int main(void)
{
	char str1[100] = "Hello";
	char str2[] = "Hello"; //백지수표개념
	char str3[100] = "\0"; //null
	char str4[100] = "\n"; 

	printf("%zu %zu\n", sizeof(str1), strlen(str1)); //null은 글자수에서 뺀다
	printf("%zu %zu\n", sizeof(str2), strlen(str2));
	printf("%zu %zu\n", sizeof(str3), strlen(str3));
	printf("%zu %zu\n", sizeof(str4), strlen(str4));

	return 0;
}

 

char str[100] 같은 경우는 / 100

char str[] 같은 경우는 해당 문자열에 맞춰서 크기를 정해준다.

나머지는 [100]을 넣어줬으므로 크기가 모두 100이다.

 

strlen을 통해서 각 크기가 얼마인지 출력을 해줄 수 있다.

여기서 특이점은 strlen은 null값을 글자수에서 빼기 때문에 실제로는 null값이 맨 마지막에 있지만 그것을 뺀 값을 출력해준다.

 

실행결과

여기서 볼 수 있듯이 

null 값을 제외한 5글자가 2번째에 출력되는 것을 볼 수 있다.