본문 바로가기

C언어

21. 문자열 조작 함수 - strlen


1) 문자열 길이 반환하는 strlen함수


#include <string.h>

size_t setlen(const char *s)


NULL 문자는 문자열 길이에 포함되지 않는다.


#include 
#include 

int main(){
	char str[100];

	while(1){
		fgets(str, sizeof(str), stdin);
		printf("문자열의 길이 : %d\n", strlen(str));
	}

	return 0;
}


실행결과

123456
문자열의 길이 : 7
C program
문자열의 길이 : 10
한글
문자열의 길이 : 5


123456를 입력했는데 왜 7일까 ? 
Enter 키까지 포함됬기 때문이다. 그러므로 "123456"이 아닌 "123456\n"의 길이를 계산한 것이다.
영문자는 1byte, 한글은 2byte기 때문에

"한글" 이라고 입력하면 \n 포함 총 5byte의 길이가 반환된다.