개발

[C언어] string 함수들 (예제포함)

딱딱키보드 2023. 6. 6. 14:53
728x90
SMALL

C 언어에서 문자열을 다루는 함수들은 string.h 라이브러리에 포함되어 있습니다. 이러한 함수들은 문자열을 조작하고 처리하기 위한 다양한 기능을 제공합니다.

아래는 C 언어에서 주로 사용되는 문자열 함수들과 그 예제입니다.

 

strlen 함수

strlen 함수는 문자열의 길이를 계산하는 함수입니다. 아래는 strlen 함수의 예제입니다.

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

int main() {
  char str[] = "Hello, world!";
  int length = strlen(str);
  printf("The length of the string is %d.\n", length);
  return 0;
}

위 예제에서는 strlen 함수를 사용하여 문자열 "Hello, world!"의 길이를 계산하고 출력합니다. 출력 결과는 다음과 같습니다.

The length of the string is 13.

 

strcat 함수

strcat 함수는 두 개의 문자열을 합치는 함수입니다. 아래는 strcat 함수의 예제입니다.

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

int main() {
  char str1[50] = "Hello, ";
  char str2[] = "world!";
  strcat(str1, str2);
  printf("%s\n", str1);
  return 0;
}

위 예제에서는 strcat 함수를 사용하여 두 개의 문자열을 합치고 출력합니다. 출력 결과는 다음과 같습니다.

Hello, world!
 

strcpy 함수

strcpy 함수는 문자열을 복사하는 함수입니다. 아래는 strcpy 함수의 예제입니다.

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

int main() {
  char str1[50] = "Hello, ";
  char str2[] = "world!";
  strcpy(str1, str2);
  printf("%s\n", str1);
  return 0;
}

위 예제에서는 strcpy 함수를 사용하여 문자열을 복사하고 출력합니다. 출력 결과는 다음과 같습니다.

world!

 

strcmp 함수

strcmp 함수는 두 개의 문자열을 비교하는 함수입니다. 아래는 strcmp 함수의 예제입니다.

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

int main() {
  char str1[] = "hello";
  char str2[] = "world";
  int result = strcmp(str1, str2);
  if (result < 0) {
    printf("'%s' comes before '%s'.\n", str1, str2);
  } else if (result > 0) {
    printf("'%s' comes after '%s'.\n", str1, str2);
  } else {
    printf("'%s' is equal to '%s'.\n", str1, str2);
  }
  return 0;
}

위 예제에서는 strcmp 함수를 사용하여 두 개의 문자열을 비교하고 출력합니다. 출력 결과는 다음과 같습니다.

'hello' comes before 'world'.

 

strchr 함수

strchr 함수는 문자열에서 특정 문자의 첫 번째 발생 위치를 찾아주는 함수입니다. 아래는 strchr 함수의 예제입니다.

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

int main() {
  char str[] = "Hello, world!";
  char *ptr = strchr(str, 'o');
  if (ptr != NULL) {
    printf("The first occurrence of 'o' is at position %ld.\n", ptr - str);
  }
  return 0;
}

위 예제에서는 strchr 함수를 사용하여 문자열에서 문자 'o'의 첫 번째 발생 위치를 찾고 출력합니다. 출력 결과는 다음과 같습니다.

The first occurrence of 'o' is at position 4.
 

strstr 함수

strstr 함수는 문자열에서 특정 문자열의 첫 번째 발생 위치를 찾아주는 함수입니다. 아래는 strstr 함수의 예제입니다.

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

int main() {
  char str[] = "Hello, world!";
  char *ptr = strstr(str, "world");
  if (ptr != NULL) {
    printf("The first occurrence of 'world' is at position %ld.\n", ptr - str);
  }
  return 0;
}

위 예제에서는 strstr 함수를 사용하여 문자열에서 문자열 "world"의 첫 번째 발생 위치를 찾고 출력합니다. 출력 결과는 다음과 같습니다.

The first occurrence of 'world' is at position 7.

 

strtok 함수

strtok 함수는 문자열을 일정한 구분자(delimiter)를 기준으로 분리하는 함수입니다. 아래는 strtok 함수의 예제입니다.

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

int main() {
  char str[] = "apple,banana,orange";
  char *token = strtok(str, ",");
  while (token != NULL) {
    printf("%s\n", token);
    token = strtok(NULL, ",");
  }
  return 0;
}
 

위 예제에서는 strtok 함수를 사용하여 문자열 "apple,banana,orange"을 쉼표로 구분하여 분리하고 출력합니다. 출력 결과는 다음과 같습니다.

apple
banana
orange

위와 같이 C 언어에서 제공하는 문자열 함수들은 다양한 기능을 제공하므로, 적절히 활용하면 문자열 처리를 효율적으로 할 수 있습니다.

728x90
LIST

'개발' 카테고리의 다른 글

[C++] int to string 형변환 방법  (0) 2023.06.08
[C++] string to int 형변환 방법  (0) 2023.06.07
[C#, WPF] 계산기 만들기  (0) 2023.06.05
[C#, wpf] 다운로더 만들기  (0) 2023.06.04
[C#, WPF] 그리드 만들기  (0) 2023.06.03