개발공부/C언어&C++
[C언어&C++] strcat, strncat 함수(문자열 붙이기 함수)
정보를드립니다
2020. 3. 5. 20:00
반응형
안녕하세요.
오늘은 C언어에서 문자열을 붙이는 함수인 strcat와 strncat 함수에 대해 알아보도록 하겠습니다.
strcat
함수 원형
char* strcat(char *_Destination, const char *_Source);
헤더 파일
string.h
리턴값
_Destination의 포인터값이 리턴됩니다.
설명
특정 문자열을 붙입니다.
첫번째 매개변수인 _Destination문자열에 두번째 매개변수인 _Source문자열을 넣습니다.
두 문자열을 합친 크기가 _Destination의 크기보다 작아야합니다.
예제
1
2
3
4
5
6
7
8
9
10
11
12
|
#define _CRT_SECURE_NO_WARNINGS // vs2017 이후 버전은 strcat함수 실행시 보안 에러발생으로 인해 추가합니다.
#include <stdio.h>
#include <string.h>
void main()
{
char arrString1[20] = "Hello";
char arrString2[20] = "World!!";
strcat(arrString1, arrString2);
printf("%s\n", arrString1);
}
|
cs |
arrString1의 \0(NULL)값 위치에 arrString2가 붙게됩니다.
strncat
함수 원형
int strncmp( char *_Destination, const char *_Source, size_t count);
헤더 파일
string.h
리턴값
_Destination의 포인터값이 리턴됩니다.
설명
특정 문자열을 특정 크기만큼 붙입니다.
첫번째 매개변수인 _Destination문자열에 두번째 매개변수인 _Source문자열 count만큼 붙입니다.
count는 _Destination의 크기보다 같거나 작아야합니다.
예제
1
2
3
4
5
6
7
8
9
10
11
12
|
#define _CRT_SECURE_NO_WARNINGS // vs2017 이후 버전은 strncat함수 실행시 보안 에러발생으로 인해 추가합니다.
#include <stdio.h>
#include <string.h>
void main()
{
char arrString1[20] = "Hello";
char arrString2[20] = "World!!";
strncat(arrString1, arrString2, 5);
printf("%s\n", arrString1);
}
|
cs |
arrString1의 \0(NULL)값 위치에 arrString2의 문자를 5개(world)까지 붙여 넣습니다.
그리고 끝에는 \0(NULL)값이 붙습니다.
반응형