Chuỗi là mảng ký tự một chiều kết thúc bằng ký tự null. Nối chuỗi (concatenation) là ghép hai chuỗi thành chuỗi mới. Ví dụ:
Chuỗi 1: Mangoes are Chuỗi 2: tasty Nối 2 chuỗi: Mangoes are tasty
Chương trình nối hai chuỗi:
Ví dụ
#include <iostream>
using namespace std;
int main() {
char str1[100] = "Hi...";
char str2[100] = "How are you";
int i, j;
cout << "Chuỗi 1: " << str1 << endl;
cout << "Chuỗi 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 << "Chuỗi sau khi nối: " << str1;
return 0;
}
Kết quả đầu ra
Chuỗi 1: Hi... Chuỗi 2: How are you Chuỗi sau khi nối: Hi...How are you
Trong chương trình, có hai chuỗi str1 và str2. Vòng lặp for tìm cuối str1. Sau vòng lặp, i chứa chỉ số của null trong str1:
for (i = 0; str1[i] != '\0'; ++i);
Vòng lặp while chuyển giá trị str2 vào str1. Biến j bắt đầu từ 0, sao chép ký tự trong str2 vào str1 tại vị trí i. Vòng lặp chạy đến khi str2[j] là null:
j = 0;
while (str2[j] != '\0') {
str1[i] = str2[j];
i++;
j++;
}
Sau khi nối xong trong str1, thêm null vào cuối. Hiển thị chuỗi đã nối:
str1[i] = '\0'; cout << "Chuỗi sau khi nối: " << str1;