השוואת מחרוזות
חלק מהיחידה יסודות במסלול ה-C++ של Coddy. שיעור 22 מתוך 74.
ב-C++, אפשר להשוות מחרוזות בכמה דרכים. מכיוון ש- std::string היא מחלקה, יש לה אופרטורים שעברו העמסת יתר והופכים את השוואת המחרוזות לאינטואיטיבית ופשוטה.
הדרך הנפוצה ביותר להשוות בין מחרוזות היא באמצעות אופרטורי השוואה (==, !=, <, >, <=, >=):
string str1 = "hello";
string str2 = "hello";
string str3 = "Hello";
bool result1 = (str1 == str2); // נכון
bool result2 = (str1 == str3); // לא נכון (תלוי רישיות)
bool result3 = (str1 != str3); // נכוןאפשר להשתמש גם בשיטה compare(), שמחזירה 0 אם המחרוזות שוות, מספר שלם שלילי אם המחרוזת הראשונה קטנה יותר מבחינה לקסיקוגרפית, ומספר שלם חיובי אם היא גדולה יותר. שימו לב שהערך המדויק מוגדר על ידי המימוש. הוא לא בהכרח -1 או 1:
string str1 = "a";
string str2 = "b";
string str3 = "c";
cout << str2.compare(str1) << endl;
// חיובי (b בא אחרי a)
cout << str2.compare(str3) << endl;
// שלילי (b בא לפני c)
cout << str2.compare(str2) << endl;
// 0 (מחרוזות שוות)נסו בעצמכם
השיעור הזה לא כולל אתגר קוד.
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוהגדלה/הקטנההגדלה/הקטנה לאחר הפעולהקיצורים אריתמטייםאופרטורי השוואההשוואת מחרוזותתרגלו בעצמכם: קומפיילר C++ אונליין