strcat(3)

#include <string.h>

char *strcat(char *dest, const char *src);

dest문자열 뒤에 src문자열을 붙입니다. dest문자열의 0x00값에 src문자열의 시작 부분부터 0x00까지를 복사합니다.

※ 주의: strcat(3)은 buffer overflow 발생을 유발할 수 있으므로 일반적으로 프로젝트에서는 금지함수로 하는 경우가 많습니다.

※ 주의: 일부 UNIX에서는 src가 NULL이면 ""와 같은 효과가 있으나, 최신 LINUX에서는 SEGSEGV오류가 발생하여 비정상 종료됩니다.

이 경우에는 LINUX에서는 strcat(dest, src == NULL ? "" : src)로 표현하거나 src가 배열이면 오류가 발생하지 않습니다.

 

 

파라미터

dest
    - dest문자열의 뒤에 src문자열 전체를 붙일 buffer.
    - dest문자열과 src문자열을 모두 저장할 만큼의 저장 공간을 확보해야 합니다.
src
    - dest 문자열의 끝에 붙일 문자열

 

RETURN

dest
    - dest를 return합니다.

 


활용 예제

 

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

int main(int argc, char **argv)
{
    char dest[1024] = "12345";
   
    strcat(dest, "abcd");
    printf("dest = %s\n", dest);

    return 0;
}

결과:
dest = 12345abcd
블로그 이미지

사용자 자연&사람

행복한 개발자 programmer since 1995.

댓글을 달아 주세요