C++에서 두 문자열을 연결하는 방법

  1. +=연산자를 사용하여 C++에서 두 문자열 연결
  2. append()메서드를 사용하여 C++에서 두 문자열 연결

이 기사에서는 C++에서 두 문자열을 연결하는 방법에 대한 여러 방법을 보여줍니다.

+=연산자를 사용하여 C++에서 두 문자열 연결

std::string 유형은 변경 가능하며 기본적으로=+=연산자를 지원하며 후자는 내부 문자열 연결로 직접 변환됩니다. 이 연산자는 ‘문자열’유형 변수, 문자열 리터럴, C 스타일 문자열 또는 문자를 문자열 객체에 연결하는 데 사용할 수 있습니다. 다음 예제는 두 개의문자열 변수가 서로 추가되어 콘솔에 출력되는 것을 보여줍니다.

#include <iostream>
#include <string>

using std::cout; using std::endl;
using std::copy; using std::string;

int main() {
    string string1("Starting string ");
    string string2("end of the string ");

    cout << "string1:  " << string1 << endl;
    string1 += string2;
    cout << "string1:  " << string1 << endl;

    return EXIT_SUCCESS;
}

산출:

string1:  Starting string
string1:  Starting string end of the string

또는 두 개의 문자열 변수를 매개 변수로 취하고 연결 결과를 반환하는 맞춤 함수를 생성 할 수 있습니다. string에는 이동 생성자가 있으므로 긴 문자열을 값으로 반환하는 것이 매우 효율적입니다. concTwoStrings 함수는string2 변수에 할당 된 새로운string 객체를 생성합니다.

#include <iostream>
#include <string>

using std::cout; using std::endl;
using std::copy; using std::string;

string concTwoStrings(const string &s1, const string& s2)
{
    return s1 + s2;
}

int main() {
    string string1("Starting string ");

    string string2 = concTwoStrings(string1, " conc two strings");
    cout << "string2: " << string2 << endl;

    return EXIT_SUCCESS;
}

산출:

string2: Starting string  conc two strings

append()메서드를 사용하여 C++에서 두 문자열 연결

appendstd::string 클래스의 내장 메소드입니다. 풍부한 기능을 제공하며, 모두 매뉴얼 페이지에서 살펴볼 수 있습니다. 이 경우이를 활용하여 리터럴 문자열 값을string 객체에 연결합니다.

#include <iostream>
#include <string>

using std::cout; using std::endl;
using std::copy; using std::string;

int main() {
    string string("Temporary string");

    string.append(" appended sequence");
    cout << string << endl;

    return EXIT_SUCCESS;
}

산출:

Temporary string appended sequence

append 메소드는this 객체에 대한 포인터를 반환하므로 여러 연결 함수를 호출하고string 변수에 여러 번 추가 할 수 있습니다. 이 메소드는append ({ 'a', 'b', 'c', 'd'})구문을 사용하여 이니셜 라이저 문자 목록을 추가 할 수도 있습니다.

#include <iostream>
#include <string>

using std::cout; using std::endl;
using std::copy; using std::string;

int main() {
    string string1("Starting strings");
    string string2("end of the string");

    string1.append(" ").append(string2).append("\n");
    cout << string1;

    return EXIT_SUCCESS;
}

산출:

Starting string end of the string

관련 문장 - C++ String

  • C++에서 문자열을 대문자로 변환하는 방법
  • C++에서 문자열을 자르는 방법