Menu
CoddyTech

So sánh chuỗi

Thuộc phần Kiến thức nền tảng trong hành trình C++ của Coddy. Bài học 22 trên 74.

Trong C++, bạn có thể so sánh chuỗi theo nhiều cách. Vì std::string là một lớp, nó có các toán tử được nạp chồng, giúp việc so sánh chuỗi trở nên trực quan và đơn giản.

Cách phổ biến nhất để so sánh các chuỗi là dùng toán tử so sánh (==, !=, <, >, <=, >=):

string str1 = "hello";
string str2 = "hello";
string str3 = "Hello";

bool result1 = (str1 == str2);  // true
bool result2 = (str1 == str3);  // false (phân biệt chữ hoa và chữ thường)
bool result3 = (str1 != str3);  // true

Bạn cũng có thể dùng phương thức compare(), phương thức này trả về 0 nếu hai chuỗi bằng nhau, một số nguyên âm nếu chuỗi thứ nhất đứng trước chuỗi thứ hai theo thứ tự từ điển và một số nguyên dương nếu đứng sau. Lưu ý rằng giá trị chính xác tùy thuộc vào cách triển khai. Giá trị đó không nhất thiết là -1 hoặc 1:

string str1 = "a";
string str2 = "b";
string str3 = "c";

cout << str2.compare(str1) << endl; 
// Số dương (b đứng sau a)

cout << str2.compare(str3) << endl;
// Số âm (b đứng trước c)

cout << str2.compare(str2) << endl;
// 0 (các chuỗi bằng nhau)

Tự làm thử

Bài học này không có thử thách code.

quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch C++ online