這個問題是爲了響應What is &&& operation in C,這讓我想到&
被用作二進制AND和地址。爲什麼`&`用於C中的二進制AND和地址?
爲什麼相同的符號用於這兩個非常不相似的任務?想想看,@
似乎是一個更好的地址符號。
我不希望它在實踐中引起太多問題,因爲編譯器可能會捕獲大多數錯誤的用法,但可能會創建包含宏的代碼,看起來像是在執行二進制AND,而實際上它做地址。
這個問題是爲了響應What is &&& operation in C,這讓我想到&
被用作二進制AND和地址。爲什麼`&`用於C中的二進制AND和地址?
爲什麼相同的符號用於這兩個非常不相似的任務?想想看,@
似乎是一個更好的地址符號。
我不希望它在實踐中引起太多問題,因爲編譯器可能會捕獲大多數錯誤的用法,但可能會創建包含宏的代碼,看起來像是在執行二進制AND,而實際上它做地址。
原因@
沒有用於「地址」(如你所說將是一個不錯的選擇)是該字符不是ISO 646 character set,這實際上是在C.
確實,C 的設計者可以使用並使用@
併爲其設計了trigraph序列,但我懷疑他們認爲這並不是真正值得的麻煩。 &&&
可以出現在人們的代碼中的事實可能不被認爲是選擇不同運營商符號的理由。
我一直在想這個。 Pascal使用'@',這對我來說似乎更加直觀 –