C++ เป็นภาษาโปรแกรมที่ใช้สำหรับการพัฒนาแอปพลิเคชันที่มีประสิทธิภาพสูงและมีคุณภาพ หนึ่งในคุณสมบัติที่ C++ นำเสนอคือการจัดการสตริง ซึ่งรวมถึงความสามารถในการเปรียบเทียบสตริงเพื่อดูว่าเท่ากันหรือไม่ อย่างไรก็ตาม C++ มีสองวิธีในการเปรียบเทียบสตริง: the “ == ” โอเปอเรเตอร์ และ “ เปรียบเทียบ() ' วิธี. แม้จะมีความคล้ายคลึงกัน แต่ก็มีความแตกต่างที่ชัดเจนซึ่งอาจส่งผลต่อการทำงานของรหัสของคุณ
บทช่วยสอนนี้จะครอบคลุมความแตกต่างระหว่างสองวิธีนี้ == และการเปรียบเทียบ () ใน C ++
== ตัวดำเนินการใน C ++
ในภาษา C++ ตัวดำเนินการ double equal == ใช้เพื่อตรวจสอบว่าค่าทั้งสองเท่ากันหรือไม่ ต่อไปนี้เป็นรูปแบบทั่วไปสำหรับการใช้ตัวดำเนินการ ==:
เมื่อต้องการใช้ “ == ” ตัวดำเนินการสำหรับเปรียบเทียบสตริง รูปแบบทั่วไปมีดังนี้:
- ก่อนอื่น คุณต้องประกาศตัวแปรสตริงสองตัวเพื่อเปรียบเทียบ
- จากนั้นใช้ปุ่ม “ == ” เพื่อเปรียบเทียบสตริงทั้งสอง
- ตัวดำเนินการจะส่งกลับค่าบูลีนของ “ จริง” หรือ “เท็จ “ ขึ้นอยู่กับว่าสตริงทั้งสองเหมือนกันหรือไม่
นี่คือตัวอย่าง:
#รวมถึง
#รวมถึง <สตริง>
โดยใช้ เนมสเปซ มาตรฐาน ;
นานาชาติ หลัก ( ) {
สตริง str1 = 'สวัสดี' ;
สตริง str2 = 'ลีนุกซ์' ;
สตริง str3 = 'สวัสดี' ;
ถ้า ( str1 == str2 ) {
ศาล << 'สตริงที่ 1 และสตริงที่ 2 เท่ากัน' << จบ ;
} อื่น {
ศาล << 'สตริงที่ 1 และสตริงที่ 2 ไม่เท่ากัน' << จบ ;
}
ถ้า ( str1 == str3 ) {
ศาล << 'สตริงที่ 1 และสตริงที่ 3 เท่ากัน' << จบ ;
} อื่น {
ศาล << 'สตริงที่ 1 และสตริงที่ 3 ไม่เท่ากัน' << จบ ;
}
กลับ 0 ;
}
วิธีเปรียบเทียบ () ใน C ++
ใน C++ วิธีการเปรียบเทียบ () ใช้เพื่อเปรียบเทียบสตริงสองอักขระต่ออักขระตามค่า ASCII และส่งกลับจำนวนเต็มที่แสดงความสัมพันธ์ ถ้าสตริงแรกน้อยกว่าสตริงที่สองตามพจนานุกรม ค่าจำนวนเต็มที่ส่งคืนโดยวิธีนี้จะเป็นค่าลบและเป็นศูนย์หากสตริงที่เปรียบเทียบทั้งสองเหมือนกัน และถ้าสตริงแรกมากกว่าอีกสตริงหนึ่ง เมธอดนี้จะส่งคืนจำนวนบวก
ด้านล่างนี้เป็นรูปแบบสำหรับการใช้วิธีเปรียบเทียบ ():
นานาชาติ ตัวแปร_ชื่อ = str1. เปรียบเทียบ ( str2 ) ;ด้านล่างนี้เป็นตัวอย่างโค้ดสำหรับการเปรียบเทียบสองสตริงโดยใช้วิธีการเปรียบเทียบ () :
#รวมถึง#รวมถึง <สตริง>
โดยใช้ เนมสเปซ มาตรฐาน ;
นานาชาติ หลัก ( ) {
สตริง str1 = 'LinuxHint' ;
สตริง str2 = 'เว็บไซต์' ;
นานาชาติ ผลลัพธ์ = str1. เปรียบเทียบ ( str2 ) ;
ถ้า ( ผลลัพธ์ < 0 )
{
ศาล << 'สตริงที่ 1 มีความหมายน้อยกว่าสตริงที่ 2' << จบ ;
}
กลับ 0 ;
}
อะไรคือความแตกต่างระหว่าง C ++ String == และวิธีการเปรียบเทียบ ()
ความแตกต่างที่สำคัญระหว่างวิธีการเปรียบเทียบ () และตัวดำเนินการ == แสดงอยู่ด้านล่าง:
เปรียบเทียบ() | == โอเปอเรเตอร์ |
---|---|
จะส่งกลับค่าจำนวนเต็ม | จะส่งกลับค่าบูลีน |
ต้องการสตริงที่มีความยาวเท่ากันเพื่อให้ได้ผลลัพธ์ที่ถูกต้อง | เปรียบเทียบสตริงทั้งหมดทีละอักขระ |
สามารถดำเนินการได้หลายอย่างขึ้นอยู่กับอาร์กิวเมนต์ | สามารถดำเนินการได้เพียงครั้งเดียวเท่านั้น |
ทำการเปรียบเทียบคำศัพท์ของสตริงทีละอักขระ | ทำการเปรียบเทียบอย่างง่ายของสตริงทั้งหมด |
ทำการแยกสตริงคำต่อคำ | ทำการเปรียบเทียบสตริงอักขระต่ออักขระ |
บทสรุป
C++ เป็นภาษาโปรแกรมที่มีประสิทธิภาพซึ่งมีความสามารถในการจัดการสตริง รวมถึงความสามารถในการเปรียบเทียบสตริงโดยใช้ ' == ” โอเปอเรเตอร์ หรือ “ เปรียบเทียบ() ' วิธี. ทั้งสองวิธีมีความแตกต่างกันอย่างชัดเจนซึ่งส่งผลต่อประสิทธิภาพของโค้ด และการทำความเข้าใจว่าควรใช้แต่ละวิธีเมื่อใดจะช่วยให้นักพัฒนาเขียนโค้ดได้อย่างมีประสิทธิภาพมากขึ้น