今天第一次看到, 為了在某些僅支援 ISO/IEC 646 編碼的環境上撰寫 C/C++ 程式碼, 所以有些算符以及字符有替代的表示方法, 例如 &&
可以改用 and
, ||
可以改用 or
, 或是用 <%
與 %>
替代 {
和 }
等等, 所以以下的 C 程式碼是可以編譯執行的:
#include<stdio.h>
#include<iso646.h>
int main()
<% // {
int a = 10, b= 20;
if(a and b) // a && B
printf("OK");
return 0;
%> // }
同樣的道理, 以下的 C++ 程式碼也是可以執行的:
// Online IDE - Code Editor, Compiler, Interpreter
#include<iostream>
int main()
<%
int a = 10, b= 20;
if(a and b)
std::cout << "OK";
return 0;
%>
如果想知道有哪些替代表示法可用, C 可以參考這裡, C++ 可以參考這裡。要注意的是, C 是採用巨集定義的方式提供算符的替代表示法, 所以要先引入 iso646.h 表頭檔才能使用, 不然編譯會出現語法錯誤。
當然, 這只是為了特殊環境下的設計, 如果用這些替代表示法撰寫程式, 應該絕大多數人都看不懂。
Top comments (1)
💻 Online Compiler Freecodez
Freecodez ・ Oct 24