Theo C ++ '03 Tiêu chuẩn 2.3 / 1:
Trước khi bất kỳ quá trình xử lý nào khác diễn ra, mỗi lần xuất hiện của một trong các chuỗi sau của ba ký tự (chuỗi trình tự ba chiều của thuật ngữ) được thay thế bằng ký tự đơn được chỉ ra trong Bảng 1.
---------------------------------------------------------------------------- | trigraph | replacement | trigraph | replacement | trigraph | replacement | ---------------------------------------------------------------------------- | ??= | # | ??( | [ | ??< | { | | ??/ | \ | ??) | ] | ??> | } | | ??’ | ˆ | ??! | | | ??- | ˜ | ----------------------------------------------------------------------------
Trong cuộc sống thực, điều đó có nghĩa là mã printf( "What??!\n" );
sẽ dẫn đến việc in What|
vì ??!
là một chuỗi ba chữ được thay thế bằng |
ký tự.
Câu hỏi của tôi là mục đích của việc sử dụng tricles? Có bất kỳ lợi thế thực tế của việc sử dụng tricles?
CẬP NHẬT : Trong các câu trả lời đã được đề cập rằng một số bàn phím châu Âu không có tất cả các ký tự dấu chấm câu, vì vậy các lập trình viên không phải là người Mỹ phải sử dụng ba chữ trong cuộc sống hàng ngày?
CẬP NHẬT : Visual Studio 2010 đã tắt hỗ trợ trecraft theo mặc định.