문자열은 null 문자로 끝나는 1차원 문자 배열입니다. 두 문자열의 연결은 새로운 문자열을 형성하기 위해 결합하는 것입니다. 예를 들어.
String 1: Mangoes are String 2: tasty Concatenation of 2 strings: Mangoes are tasty
두 문자열을 연결하는 프로그램은 다음과 같습니다.
예시
#include <iostream> using namespace std; int main() { char str1[100] = "Hi..."; char str2[100] = "How are you"; int i,j; cout<<"String 1: "<<str1<<endl; cout<<"String 2: "<<str2<<endl; for(i = 0; str1[i] != '\0'; ++i); j=0; while(str2[j] != '\0') { str1[i] = str2[j]; i++; j++; } str1[i] = '\0'; cout<<"String after concatenation: "<<str1; return 0; }
출력
String 1: Hi... String 2: How are you String after concatenation: Hi...How are you
위의 프로그램에는 두 개의 문자열 str1과 str2가 있습니다. for 루프는 str1의 끝에 도달하는 데 사용됩니다. for 루프의 끝에서 i는 str1에 있는 null 값의 인덱스를 포함합니다. 다음 코드 스니펫은 이를 보여줍니다.
for(i = 0; str1[i] != '\0'; ++i);
while 루프는 str2의 값을 str1로 전송하는 데 사용됩니다. 변수 j는 0에서 시작하여 str2의 문자를 str1의 i가 가리키는 위치에 복사합니다. 이 루프는 str2[j]의 값이 null이 아닐 때까지 실행됩니다. 이것은 다음과 같이 증명됩니다.
j=0; while(str2[j] != '\0') { str1[i] = str2[j]; i++; j++; }
문자열이 str1에서 연결된 후 null이 끝에 추가됩니다. 그런 다음 연결된 문자열이 표시됩니다. 이에 대한 코드 조각은 다음과 같습니다 -
str1[i] = '\0'; cout<<"String after concatenation: "<<str1;