C++ 문자열


C++는 다음 두 가지 유형의 문자열 표현을 제공합니다.

  • C 스타일 문자열

  • C++에서 도입된 문자열 클래스 유형

C 스타일 문자열

C 스타일 문자열 C 언어에서 유래되었으며 C++에서는 계속 지원됩니다. 문자열은 실제로 null 문자 ''를 사용합니다.

다음 예제에서는 위 함수 중 일부를 사용합니다.

char greeting[6] = {'H', 'e', 'l', 'l', 'o', '
char greeting[] = "Hello";
'};

위 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다.

#include <iostream>

using namespace std;

int main ()
{
   char greeting[6] = {'H', 'e', 'l', 'l', 'o', '
Greeting message: Hello
'};    cout << "Greeting message: ";    cout << greeting << endl;    return 0; }

C++의 String 클래스

C++ 표준 라이브러리는 string 클래스 유형을 제공합니다. , 위의 모든 작업을 지원하고 다른 더 많은 기능을 추가합니다. 우리는 C++ 표준 라이브러리에서 이 클래스를 연구할 것입니다. 이제 다음 예제를 살펴보겠습니다.

지금까지 클래스와 객체에 대해 논의하지 않았기 때문에 지금은 이 예제를 완전히 이해하지 못할 수도 있습니다. 이제 이 예제를 잠깐 살펴보고 나중에 객체 지향 개념을 이해하면 다시 돌아올 수 있습니다.

#include <iostream>
#include <cstring>

using namespace std;

int main ()
{
   char str1[10] = "Hello";
   char str2[10] = "World";
   char str3[10];
   int  len ;

   // 复制 str1 到 str3
   strcpy( str3, str1);
   cout << "strcpy( str3, str1) : " << str3 << endl;

   // 连接 str1 和 str2
   strcat( str1, str2);
   cout << "strcat( str1, str2): " << str1 << endl;

   // 连接后,str1 的总长度
   len = strlen(str1);
   cout << "strlen(str1) : " << len << endl;

   return 0;
}

위 코드를 컴파일하고 실행하면 다음과 같은 결과가 나옵니다.

strcpy( str3, str1) : Hello
strcat( str1, str2): HelloWorld
strlen(str1) : 10