ความสามารถในการพิมพ์ข้อความธรรมดาลงในสตริงหรืออักขระที่ยกมาในซอร์สโค้ดและความสามารถในการดูอักขระจริงนั้นดีมาก ตัวอย่างเช่นสัญลักษณ์ pi 'π' หรือ ideograph '𠀊' นั้นดีกว่าของ '\ u3c0' ที่เทียบเท่าสำหรับ pi และ L '\ u2000A' สำหรับ ideograph
เป็นไปได้ที่จะพิมพ์และ / หรือคัดลอกและวางอักขระเหล่านี้ลงในซอร์สโค้ดเช่นเดียวกับที่คุณทำกับอักขระ ASCII ในตัวแก้ไขที่เหมาะสม
ฉันพบว่าตัวอย่างที่เป็นรูปธรรมมีประโยชน์ในการสร้างแนวความคิดและทำความเข้าใจกับสิ่งต่าง ๆ ที่บางครั้งคำอธิบายคำดูเหมือนจะไม่ได้ขับรถกลับบ้าน กำหนดค่าคงที่อักขระ Unicode ที่พิมพ์ลงในซอร์สโค้ดเช่นตัวอย่างโค้ดสั้น ๆ ดังต่อไปนี้:
const unsigned char ASCII_0X7E = (unsigned char) '~';
const unsigned short UNICODE_0X3C0 = (unsigned short) 'π';
const unsigned long UNICODE_0X2000A = (unsigned long) '𠀊';
const unsigned long UNICODE_0X2893D = (unsigned long) '𨤽';
อักขระตัวหนอน ASCII '~' สามารถบันทึกในไฟล์ต้นฉบับ ASCII หรือ UTF-8 ได้ แต่ตัวอักขระ Unicode ไม่สามารถจัดเก็บในรูปแบบ ASCII ได้ สัญลักษณ์ PI 'π' คือจุดโค้ด Unicode 0x3c0 และสามารถเก็บไว้ในรูปแบบ UTF-8 ในรูปแบบค่าไบต์คู่ 0xcf, 0x80 Ideographs ที่ Unicode code points 0x2000a และ 0x2893d ต้องการลำดับ UTF-8 4 ไบต์
เพื่อให้อักขระเหล่านั้นรักษาค่าที่ตั้งใจไว้และคอมไพเลอร์เพื่อแปลความหมายตามที่ต้องการซอร์สโค้ดจำเป็นต้องบันทึกในรูปแบบที่รองรับชุดอักขระ Unicode เช่น UTF-8 หรือ UTF-16 หากบันทึกเป็น UTF-8 คอมไพเลอร์ที่ดีจะเข้าใจและตีความว่าเป็นค่าที่ต้องการและตัวแก้ไขที่เหมาะสมจะโหลดและแสดงอักขระอย่างถูกต้อง
ตามที่คนอื่น ๆ ชี้ให้เห็นถ้าคุณไม่มีตัวอักษรใด ๆ ในซอร์สโค้ดของคุณที่อยู่นอกช่วง ASCII การบันทึกเป็น UTF-8 จะส่งผลให้ไฟล์ที่ไม่แตกต่างจากการบันทึกไฟล์ ASCII เนื่องจาก UTF- 8 ถูกออกแบบมาเพื่อทับซ้อน ASCII ในช่วงของอักขระ ASCII ทันทีที่คุณพิมพ์อักขระใด ๆ ลงในซอร์สโค้ดของคุณซึ่งอยู่นอกช่วง ASCII ตัวแก้ไขที่เหมาะสมจะแจ้งให้คุณทราบว่าคุณต้องเลือกการเข้ารหัสเพื่อใช้ในการบันทึกไฟล์ UTF-8 เป็นตัวเลือกที่ดีเนื่องจากสามารถรองรับ ASCII ได้เช่นเดียวกับตัวละครอื่น ๆ ที่รองรับในสภาพแวดล้อมการพัฒนาของคุณ