2017-06-02 37 views
0

在幾乎每一種語言引用字符串很簡單 - 你把一些東西串前,然後同樣的東西在一個字符串的結尾(也許鏡像),例如:爲什麼m4使用兩個不同的字符作爲引號?

"string" 
'string' 
R"(string)" 

m4宏處理器不同的是,雖然,因爲字符串都使用反引號和單引號這樣的引用:

`string' 

我的問題是:這種做法有什麼技術上的理由,或只是作者的創造力的表現?

回答

2

引用Wikipedia,它涉及控制宏展開字符串中:

不像大多數語言,在M4字符串使用的是反引號(`) 爲起始定界符,和撇號(')所報結尾分隔符。 使用單獨的開始和結束分隔符允許 在字符串中任意嵌套引號,從而允許在字符串的不同部分對 宏擴展進行控制的程度。

+0

這是直接引用是奇數出來。基於與m4相同的原因,幾乎每一種自然語言都使用[鏡像引用](https://en.wikipedia.org/wiki/Quotation_mark#Summary_table)。直截了當的引號只是在19世紀才發明的,以便在打字機上保存鍵盤,並將其轉移到ASCII同樣擁擠的計算機上。 –

相關問題