[C] strcat, strncat 문자열 추가 함수
strcat, strncat 문자열 추가 함수
C에서 문자열을 추가하는 함수가 있다.
바로 strcat 와 ctrncat이다.
하나의 문자열 뒤에 또 다른 문자열을 추가하는 함수이다.
문자열 길이 설정 여부에 따라 두 함수가 나누어 진다.
strcat 일반 문자열 추가 |
strcat 사용법은 아래와 같다.
#include<string.h> char * strcat( char * dest, const char * src ) ex) char destStr[128] = "test string "; char * srcStr = "hello world"; strcat( destStr, srcStr ); |
첫번째 인자 문자열인 destStr 뒤에 두번째 문자열인 "hello world"가 추가 된다.
예제를 보며 결과를 확인해 보자.
[예제]
#include <stdio.h> #include <string.h> #include <string.h> //<--- strcat 함수 사용을 위해 추가 한다. int main(int argc, char *argv[]) { char destStr[128] = "test string "; const char * srcStr = "hello world"; strcat( destStr, srcStr ); //문자열을 합친다. printf( " destStr[%s] \n",destStr); return 0; } |
실행 결과 destStr[test string hello world] 계속하려면 아무 키나 누르십시오... |
strncat 지정 된 길이만큼 문자열 추가 |
strncpy 사용법은 아래와 같다.
#include<string.h> char * strncat( char * dest, const char * src, size_t n ) ex) char destStr[128] = "test string"; char * srcStr = "hello world"; strncpy( destStr, srcStr, 5 ); |
두번째 인자 문자열인 "hello world" 에서 hello만 추가 하고 싶다.
그럼 strncat을 사용해 5문자열만 추가하게 할 수 있다.
다음 예제를 살펴 보자
[예제]
#include <stdio.h> #include <string.h> #include <string.h> //<--- strncpy 함수 사용을 위해 추가 한다. int main(int argc, char *argv[]) { char destStr[128] = "test string" const char * srcStr = "hello world"; strncat( destStr, srcStr, 5 ); //hello만 추가 하기 위해 5를 넣는다. hello는 5byte 이기 때문에 5를 넣는다. printf( " destStr[%s] \n",destStr); return 0; } |
실행 결과 destStr[test string hello] 계속하려면 아무 키나 누르십시오... |