Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

Trigraphs ใน C++


พื้นหลัง

ชุดตัวอักษร ISO-646 ไม่มีตัวอักษรครบสำหรับ syntax ของ C ดังนั้นบางระบบที่มีคีย์บอร์ด/หน้าจอที่ไม่รองรับตัวอักษรบางตัว สามารถสร้างตัวอักษรเหล่านั้นได้ด้วยลำดับ 3 ตัวอักษร เรียกว่า Trigraphs

ใน C, ก่อนการประมวลผลอื่นๆ ทุกครั้งที่พบ trigraph sequence จะถูกแทนที่ด้วยตัวอักษรเดี่ยว

ตาราง Trigraphs

Trigraphแทนที่ด้วยTrigraphแทนที่ด้วยTrigraphแทนที่ด้วย
??=#??([??<{
??/\??)]??>}
??'^??!|??-~

สถานะปัจจุบัน

Trigraphs มีอยู่เพื่อเหตุผลทางประวัติศาสตร์ ตอนนี้คีย์บอร์ดสมัยใหม่รองรับตัวอักษรครบแล้ว แต่ก่อนหน้านี้บางคีย์บอร์ดยุโรปไม่มีตัวอักษรบางตัว จึงมีการสร้าง trigraphs ขึ้น

หมายเหตุ: C++17 ได้ deprecated trigraphs แล้ว และ C++20 ลบออกไปอย่างสมบูรณ์