Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C 언어의 문자열

<시간/>

문자열은 문자 배열이며 null 문자(\0)로 종료됩니다. null 문자는 사용자가 배치하지 않으며 컴파일러는 자동으로 문자열 끝에 배치합니다.

배열과 문자열의 차이점은 컴파일러가 배열의 끝에 null 문자를 배치하지 않는 반면 문자열에서는 컴파일러가 null 문자를 배치한다는 것입니다.

다음은 C 언어의 문자열 구문입니다.

char myStr[size];

여기,

myStr: 문자열

크기: 문자열 크기 설정

아래와 같이 C 언어로 문자열 초기화 -

char myStr[size] = “string”;
char myStr[size] = { ‘s’,’t’,’r’,’i’,’n’,’g’,’\0’ };

다음 표는 C 언어에서 string의 기능을 나타낸 것입니다.

함수 목적
strcpy(s1, s2) 문자열 s2를 문자열 s2로 복사
strcat(s1, s2) s2를 s1의 끝에 연결
strlen(s1) 문자열 s1의 길이를 반환
strcmp(s1, s2) s1과 s2가 같으면 0을 반환 s1의 ASCII 값이 s2보다 크면 0보다 큼 s1의 ASCII 값이 s2보다 작으면 0보다 작음
strchr(s1, ch) 문자열 s1에서 문자 ch의 첫 번째 출현에 대한 포인터를 반환
strstr(s1, s2) 문자열 s1에서 문자열 s2의 첫 번째 발생에 대한 포인터를 반환

다음은 C 언어의 문자열 예입니다.

예시

#include <stdio.h>
#include <string.h>
int main () {
   char s1[10] = "Hello";
   char s2[10] = "World";
   int len, com ;
   strcpy(s1, s2);
   printf("Strings s1 and s2 : %s\t%s\n", s1, s2 );
   strcat( s1, s2);
   printf("String concatenation: %s\n", s1 );
   len = strlen(s1);
   printf("Length of string s1 : %d\n", len );
   com = strcmp(s1,s2);
   printf("Comparison of strings s1 and s2 : %d\n", com );
   return 0;
}

출력

Strings s1 and s2 : WorldWorld
String concatenation: WorldWorld
Length of string s1 : 10
Comparison of strings s1 and s2 : 87