Trong thế giới của C++, chuỗi (string) là một đối tượng thuộc lớp std::string, đại diện cho dãy ký tự. Có nhiều thao tác mà chúng ta có thể thực hiện trên chuỗi, từ việc nối chuỗi, so sánh cho đến chuyển đổi, ... .
Hãy đồng hành và tìm hiểu chi tiết về chuỗi (string) trong C++ qua bài viết dưới đây của Mytour.
Chương trình Bài viết:
1. Minh họa về chuỗi (string) trong C++
2. Thực hành so sánh chuỗi trong C++
3. Hướng dẫn nối chuỗi trong C++
4. Đặc điểm về sao chép chuỗi trong C++
5. Thực hiện đo độ dài của chuỗi trong C++
6. Các thao tác xử lý chuỗi trong C++
1. Minh họa về chuỗi (string) trong C++
Dưới đây là một ví dụ minh họa về việc sử dụng chuỗi trong C++:
#include
sử dụng namespace std;
int main( ) {
string chuoi1 = 'Mytour';
char ky_tu[] = { 'C', '+', '+'};
string chuoi2 = string(ky_tu);
cout << chuoi1 << endl;
cout << chuoi2 << endl;
}
Kết quả hiển thị:
Mytour
C++
2. Ví dụ về so sánh chuỗi trong C++
Dưới đây là một ví dụ đơn giản về so sánh chuỗi sử dụng hàm strcmp().
#include
#include
sử dụng namespace std;
int main ()
{
char key[] = 'Mytour';
char buffer[50];
do {
cout < 'trang web bạn yêu thích là gì?';>{C}{C}{C}{C}{C}{C}
cin >> buffer;
} while (strcmp (key, buffer) != 0);
cout < 'câu trả lời chính'; <>
return 0;
}
Kết quả đầu ra có dạng:
Trang web mà bạn thích là gì? Mytour
Trang web mà bạn ưa thích là gì? 9mobi.vn
Trang web mà bạn đặc biệt thích là gì? Xephang.net
Câu trả lời chính xác!!
3. Ví dụ về việc ghép chuỗi trong C++
Dưới đây là ví dụ về cách ghép chuỗi trong C++ sử dụng hàm strcat():
#include
#include
sử dụng namespace std;
int main()
{
char key[25], buffer[25];
cout < 'Nhập chuỗi key:'>
cin.getline(key, 25);
cout < 'Nhập chuỗi buffer:'>
cin.getline(buffer, 25);
strcat(key, buffer);
cout < 'key=' << key << endl;
cout << ' buffer=' << buffer<<>< p=' '=''><>
return 0;
}
Kết quả đầu ra có dạng:
Nhập chuỗi key: Chào mừng
Nhập chuỗi buffer: Mytour.
Key = Chào mừng tới Mytour.
Buffer = Mytour.
4. Ví dụ về sao chép chuỗi trong C++
Ví dụ dưới đây minh họa sao chép chuỗi trong C++ bằng cách sử dụng hàm strcpy():
#include
#include
sử dụng namespace std;
int main()
{
char key[25], buffer[25];
cout < 'nhập chuỗi key:
cin.getline(key, 25);
strcpy(buffer, key);
cout < 'key: '<< key << endl;
cout << 'buffer: '<< buffer<<><p>
return 0;
}
Kết quả đầu ra:
Nhập chuỗi key: Hướng dẫn lập trình
Key = Hướng dẫn lập trình
Buffer = Thủ thuật Mytour
5. Ví dụ về độ dài chuỗi trong C++
Ví dụ minh họa tìm độ dài của chuỗi sử dụng hàm strlen():
#include
#include
sử dụng namespace std;
int main()
{
char ary[] = 'Chào mừng tới Mytour';
cout < 'độ='' dài='' của='' chuỗi=' << strlen(ary)<<>< p=' '=''><>
trả về 0;
}
Kết quả đầu ra:
Độ dài của chuỗi: 24
6. Các hàm xử lý chuỗi trong C++
Dưới đây là bảng danh sách các hàm xử lý chuỗi trong C++:
Hàm Mô tả
int so_sanh(const string& str) So sánh các đối tượng của 2 chuỗi.
int do_dai() Tìm độ dài của chuỗi
void doi_cho(string& str) Trao đổi các giá trị đối tượng của 2 chuỗi.
string tao_chuoi_moi(int pos,int n) Tạo đối tượng chuỗi mới gồm n ký tự.
int kich_thuoc() Trả về độ dài của chuỗi theo đơn vị byte.
void thay_doi_kich_thuoc(int n) Thay đổi kích thước độ dài của chuỗi lên đến n ký tự.
string& thay_the(int pos,int len,string& str) Thay thế một phần của chuỗi bắt đầu tại vị trí ký tự và kéo dài ký tự len.
string& them_ky_tu_moi(const string& str) Thêm ký tự mới vào cuối một đối tượng chuỗi khác.
char& truy_cap(int pos) Truy cập ký tự riêng lẻ tại vị trí được chỉ định.
int tim_kiem(string& str,int pos,int n) Tìm chuỗi được chỉ định trong tham số.
int tim_vi_tri_dau_tien_cua(string& str,int pos,int n) Tìm vị trí đầu tiên của chuỗi được chỉ định.
int tim_vi_tri_dau_tien_khong_khop_voi(string& str,int pos,int n ) Tìm kiếm chuỗi ký tự đầu tiên không khớp với bất kỳ ký tự nào được chỉ định trong chuỗi.
int tim_vi_tri_cuoi_cung_cua(string& str,int pos,int n) Tìm kiếm chuỗi ký tự cuối cùng của chuỗi được chỉ định.
int tim_vi_tri_cuoi_cung_khong_khop_voi(string& str,int pos) Tìm kiếm ký tự cuối cùng không khớp với chuỗi đã chỉ định.
string& chen() Chèn một ký tự mới trước ký tự được chỉ định ở vị trí cho trước.
int do_dai_toi_da() Tìm độ dài tối đa của chuỗi.
void them_ky_tu_moi(char ch) Thêm một ký tự mới ch ở cuối chuỗi.
void xoa_ky_tu_cuoi_cung() Xóa ký tự cuối cùng của chuỗi.
string& gan_gia_tri_moi() Gán một giá trị mới cho chuỗi.
int sao_chep(string& chuoi) Sao chép nội dung từ chuỗi này sang chuỗi khác.
char& cuoi_cung() Trả về tham chiếu của ký tự cuối cùng.
Iterator bat_dau() Trả về tham chiếu của ký tự đầu tiên.
int kich_thuoc() Trả về bộ nhớ được phân bổ cho chuỗi.
const_iterator bat_dau() Trỏ đến phần tử đầu tiên của chuỗi.
const_iterator ket_thuc() Trỏ đến phần tử cuối cùng của chuỗi.
void xoa_tat_ca() Xóa tất cả phần tử của chuỗi.
const_reverse_iterator cuoi_cung_nguoc() Trỏ đến ký tự cuối cùng của chuỗi.
const_char* du_lieu() Sao chép ký tự của chuỗi vào mảng.
bool rong() Kiểm tra xem chuỗi có trống hay không.
string& xoa() Xóa tất cả các ký tự được chỉ định.
char& dau() Trả về tham chiếu của ký tự đầu tiên.
string& them() Nối một ký tự mới ở cuối chuỗi.
string& gan() Gán một giá trị mới cho chuỗi.
char lay(int pos) Lấy một ký tự ở vị trí được chỉ định.
int tim_kiem_cuoi() Tìm kiếm vị trí cuối cùng của chuỗi.
con trỏ cuối() Tham chiếu ký tự cuối cùng của chuỗi.
con trỏ cuối_ngược() Trỏ đến ký tự đầu tiên của chuỗi.
coắt_to() Giảm kích thước cho bằng kích thước của chuỗi.
con trỏ_chuỗi() Trả về con trỏ tới một mảng chứa chuỗi ký tự kết thúc null.
con trỏ_cuối_ngược_vị_thái() Tham chiếu ký tự đầu tiên của chuỗi.
con trỏ_ngược_vị_thái() Tham chiếu ký tự cuối cùng của chuỗi.
thay_dổi_len(inr len) Yêu cầu thay đổi hàm thành viên capacity.
loại_bộ_nhớ lấy_bộ_nhớ(); Trả về đối tượng được phân bổ liên kết với chuỗi.
Bài viết trên đây Mytour đã tổng hợp một cách chi tiết về chuỗi (string) trong ngôn ngữ lập trình C++. Nếu bạn muốn khám phá thêm, hãy tham khảo những bài viết khác trên trang web của chúng tôi về vòng lặp trong ngôn ngữ lập trình C, với những ví dụ cụ thể và phân tích chi tiết.