C++의 문자열 연결: 문자열을 연결하는 4가지 방법
이 기사에서는 C++ 언어에서 문자열 연결을 수행하는 다양한 방법을 공개합니다. 이 방법은 프로그래밍 중에 다양한 용도로 사용할 수 있습니다. 그러나 일반적으로 개념은 위치가 다른 두 개의 문자열을 결합하여 함께 배치하는 것과 같습니다.
C++의 문자열 연결 기술
C++에서 문자열을 연결하는 동안 다음 기술을 고려할 수 있습니다.
- C++ 연결(+) 연산자
- strcat() 메서드
- C++ 추가() 함수
- 연결을 위해 C++ for 루프 사용
1. 문자열 연결을 위한 C++ '+' 연산자
C++ + 연산자
를 사용하여 두 문자열을 쉽게 연결할 수 있습니다.
'+' 연산자는 두 개의 입력 문자열을 더하고 연결된 문자열을 포함하는 새 문자열을 반환합니다.
통사론:
string1 + string2;
예:
#include <bits/stdc++.h>
using namespace std;
int main()
{ string str1="", str2="";
cout<<"Enter String 1:\n";
cin>>str1;
cout<<"Enter String 2:\n";
cin>>str2;
string res = str1 + str2;
cout<<"Concatenated String:"<<endl;
cout<<res;
return 0;
}
산출:
Enter String 1:
Journal
Enter String 2:
Dev
Concatenated String:
JournalDev
2. C++ strcat() 메서드
C++에는 문자열을 연결하는 기본 제공 메서드가 있습니다. strcat()
메서드는 C++에서 문자열을 연결하는 데 사용됩니다.
strcat() 함수는 char 배열을 입력으로 받은 다음 함수에 전달된 입력 값을 연결합니다.
통사론:
strcat(char *array1, char *array2)
예 1:
#include <bits/stdc++.h>
using namespace std;
int main()
{
char str1[100] = "Journal";
char str2[100]= "Dev";
cout<<"Concatenated String:"<<endl;
strcat(str1, str2);
cout<<str1;
return 0;
}
위의 예에서 크기가 100자인 str1과 str2를 중심으로 두 개의 문자 배열을 선언했습니다. 그런 다음 char 배열 str1 및 str2를 strcat() 함수에 전달하여 연결된 문자열을 결과로 가져왔습니다.
산출:
Concatenated String:
JournalDev
예 2:
#include <bits/stdc++.h>
using namespace std;
int main()
{
char str1[100], str2[100];
cout << "Enter String 1:\n";
cin.getline(str1, 100);
cout << "Enter String 2:\n";
cin.getline(str2, 100);
cout<<"Concatenated String:"<<endl;
strcat(str1, str2);
cout<<str1;
return 0;
}
위의 예에서는 문자 단위로 터미널에서 입력을 가져오는 C++의 getline()
함수를 사용하여 사용자로부터 문자열 입력 값을 받습니다.
산출:
Enter String 1:
JournalDev-
Enter String 2:
Python
Concatenated String:
JournalDev-Python
3. C++에서 문자열 연결을 위한 append() 메서드
C++에는 또 다른 기본 제공 메서드인 문자열을 연결하는 append()가 있습니다. append()
메서드는 문자열을 함께 추가하는 데 사용할 수 있습니다. 문자열을 매개변수로 받아 다른 문자열 객체의 끝에 추가합니다.
통사론:
string1.append(string2);
예:
#include <bits/stdc++.h>
using namespace std;
int main()
{ string str1="", str2="";
cout<<"Enter String 1:\n";
cin>>str1;
cout<<"Enter String 2:\n";
cin>>str2;
str1.append(str2);
cout<<"Concatenated String:"<<endl;
cout<<str1;
return 0;
}
위의 예에서는 str2를 매개변수로 append() 함수에 전달했습니다. 또한, append() 함수는 문자열 객체 str2의 내용을 문자열 객체 str1의 내용 끝에 추가합니다. 따라서 문자열 연결의 목적을 제공합니다.
산출:
Enter String 1:
Journal
Enter String 2:
Dev
Concatenated String:
JournalDev
4. C++ for 루프 사용
문자열을 연결하기 위해 C++ for 루프를 사용하여 내장 함수 없이 목적을 달성할 수 있습니다.
예:
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
char x[100]="Journal", y[100]="Dev";
cout<<"String 1:\n";
cout<<x<<endl;
cout<<"String 2:\n";
cout<<y<<endl;
int p;
for(p=0; x[p] != '\0'; p++);//pointing to the index of the last character of x
for(int q=0; y[q] != '\0'; q++,p++)
{
x[p]=y[q];
}
x[p]='\0';
cout<<"Concatenated String:\n";
cout<<x<<endl;
return 0;
}
위의 코드 스니펫에서 우리는 주로 각각 x와 y라는 두 개의 문자 배열 입력을 허용했습니다.
또한 포인터 변수 p가 x의 마지막 문자 인덱스를 가리킬 때까지 x 문자 배열의 문자열을 탐색했습니다.
그런 다음 char 배열 y의 문자 입력을 통과하고 y의 각 문자를 x에 연결합니다.
마지막으로 결과로 연결된 문자열을 포함하는 char 배열 x 끝에 null 문자( )
를 추가합니다.
산출:
String 1:
Journal
String 2:
Dev
Concatenated String:
JournalDev
결론
따라서 이 기사에서는 C++ 언어에서 문자열을 연결하는 다양한 기술을 이해했습니다.
참조
- C++에서 문자열 연결 - StackOverFlow