문자열 함수들은 #include <string.h>안에 포함되어있다.
strcat_s
문자열 을 연결해주는 함수
2개의 문자열을 하나로 합쳐주는 역활의 함수입니다.
void main()
{
char str1[7] = "AAA";
char str2[7] = "BBB";
strcat_s(str1, str2);
cout << str1 << endl;
}
출력 하게되면 AAABBB라는 결과물을 얻을수있습니다.
strcat_s를 사용할때 주의사항
1. 문자열의 형태를 지니고 있는지 검사하지 않습니다.
2. 확보한 공간의 크기를 체크하지 않습니다. 만약 크기보다 많은 문자열을 넣을려고하면 애러가 발생합니다.
strcpy_s
문자열을 복사해주는 함수
1개의 문자열을 다른 문자열에 복사합니다.
void main()
{
char str1[7];
char str2[7] = "AAA";
strcpy_s(str1,7, str2);
cout << str1 << endl;
}
str2의 문자열을 str1로 복사하여 AAA가출력됩니다. 가운데 7은 넘길 배열의 크기입니다.
strcpy_s를 사용할때 주의사항
1. 받을 문자열이 복사할 문자열보다 짧다면 에러가 발생합니다.
strlen
문자열의 길이를 구하는 함수
void main()
{
char str1[7] = "AAA";
cout << (int)strnlen_s(str1,100) << endl;
}
str1의 문자열 길이를 반환해줍니다. 뒤에 100은 maxValue입니다.
strcmd
문자열을 비교하는 함수
2개의 문자열을 받아 2개의 문자열이 같은 문자열인지 판단한다.
void main()
{
char str1[6] = "AAA";
char str2[6] = "AAA";
if (!strcmp(str1, str2))
{
cout << "같다" <<endl;
}
else
{
cout << "다르다" << endl;
}
}
같으면 false(0)를 다르면 true(-1)을 반환한다.
strstr
문자열 안에서 문자열을 검색하는 방법
1개의 문자열에서 해당 문자열의 주소를 반환한다.
void main()
{
char str1[16] = "Hello World";
char* ptr = strstr(str1, "lo");
cout << ptr << endl;
}
출력 하면 결과는 lo World가 출력되는데 strstr이 lo의 주소를 반환하고 그뒤에 문자열을 출력하였기 때문이다.
'C++' 카테고리의 다른 글
C 파일입출력 (0) | 2020.09.04 |
---|---|
C++ malloc,callco,new (0) | 2020.09.01 |
C++ char*와char[] (0) | 2020.08.28 |
C++ Point (0) | 2020.08.26 |
C++ Reference (0) | 2020.08.24 |