C 언어는 문자열을 다루는 데에 많은 함수를 제공합니다. 그 중 하나인 strlen 함수는 문자열의 길이를 계산하여 반환하는 함수입니다. strlen 함수의 사용 방법과 예제에 대해 알아보겠습니다.
strlen 함수
strlen 함수는 문자열을 인수로 받아 해당 문자열의 길이를 계산하여 반환합니다. 반환 값은 size_t 형식(부호 없는 정수 형식)입니다.
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello, world!";
size_t length = strlen(str);
printf("문자열의 길이: %zu\n", length);
return 0;
}
위의 예제에서 strlen 함수는 문자열 "Hello, world!"의 길이를 계산하여 length 변수에 저장합니다. 이후 printf 함수를 사용하여 길이를 출력합니다. 프로그램을 실행하면 "문자열의 길이: 13"이 출력됩니다.
strlen 함수는 문자열의 길이를 계산할 때, 문자열의 마지막을 나타내는 널 문자 (\0)를 제외하고 계산합니다. 따라서 널 문자 이전까지의 문자 개수가 반환되며, 문자열의 실제 저장 공간과는 무관합니다.
주의 사항
strlen 함수는 널 종료된 문자열을 전달해야 올바른 결과를 반환합니다. 만약 널 종료 문자열이 아닌 문자 배열을 전달한다면, 예기치 않은 동작이 발생할 수 있습니다. 따라서 문자열의 마지막에는 항상 널 문자를 추가해야 합니다.
#include <stdio.h>
#include <string.h>
int main() {
char str[] = { 'H', 'e', 'l', 'l', 'o' };
size_t length = strlen(str);
printf("문자열의 길이: %zu\n", length);
return 0;
}
위의 예제에서는 널 종료 문자열이 아닌 문자 배열을 strlen 함수에 전달하였습니다. 이 경우 예기치 않은 동작이 발생할 수 있으며, 올바른 결과를 보장하지 않습니다. 따라서 항상 널 종료된 문자열을 사용해야 합니다.
결론
C 언어에서 strlen 함수는 문자열의 길이를 계산하여 반환하는 함수입니다. 문자열의 길이는 널 종료 문자열을 기준으로 계산되며, 널 종료된 문자열을 전달해야 올바른 결과를 얻을 수 있습니다. 이를 통해 문자열의 길이를 쉽게 계산하고 활용할 수 있습니다.
'IT > c언어' 카테고리의 다른 글
C 언어 strcat strncat 함수 (0) | 2023.07.18 |
---|---|
C 언어 strcpy strncpy 함수 (0) | 2023.07.17 |
C 언어 fflush 함수 (0) | 2023.07.17 |
C 언어 gets fgets (0) | 2023.07.17 |
C 언어 puts fputs (0) | 2023.07.17 |
댓글