본문 바로가기
2학년 2학기/c언어

10-3장 문자열 처리 라이브러리

by print_soo 2024. 11. 4.

strlen(s)

: 문자열의 길이

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

int main(){

    char s[] = "abcdefgh";
    int len = strlen(s);
    printf("문자열 %s의 길이 = %d", s, len);
    //문자열 abcdefgh의 길이 = 8

}

 


strcpy(s1, s2)

: 문자열을 복사

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

int main(){

    char src[] = "Hello";
    char dst[6];
    strcpy(dst, src);
    printf("복사된 문자열 = %s", dst);
    //복사된 문자열 = Hello

}

 

 


strcat(s1, s2)

: 문자열을 연결

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

int main(){

    char s[11] = "Hello";
    strcat(s, "Wolrd");
    printf("%s", s);
    //HelloWolrd
}

 

 


strcmp(s1, s2)

: 문자열을 비교

 

결과 의미
음수(<0) s1이 s2보다 앞에 있다.
0 s1과 s2는 동일하다
양수(>0) s2가 s1보다 앞에 있다. 

 

 


 

 

문자열 리터럴을 배열 s에 직접 할당할 수 없다. 물론 초기화는 가능하지만 이미 문자열을 선언하고 할당 연산자로 할당할 수는 없다. 따라서, 문자열을 할당하고 싶으면 strcpy를 사용하면 된다.

'2학년 2학기 > c언어' 카테고리의 다른 글

10-5장 문자열과 포인터  (0) 2024.11.05
10-4장 문자열을 수치로 변환  (0) 2024.11.04
10-2장 문자 입출력과 문자열 입출력  (0) 2024.11.04
10-1장 문자열과 NULL 문자  (1) 2024.11.04
9-7장 이중 포인터  (1) 2024.10.29