2016-03-06 88 views
0

我試圖使用以下命令打印括號: printf(「\)」); 但是,它給了我以下警告: 警告:未知的轉義序列'\'''如何用printf在C中打印括號?

我似乎無法找到任何關於如何解決此問題的明確解釋。 我意識到這只是一個警告,但由於它仍然把它當作一個括號來處理,所以它會拋出所有其他括號並給我提供錯誤,從而導致代碼無法編譯。

編輯:對待它作爲一個常規的字符,只是說printf(「)」)不工作。它仍然與所有的括號不匹配,並且我經歷了多次,以確保我實際上沒有丟失任何內容。

+4

括號不是C字符串或字符文字的特殊字符,他們並不需要進行轉義。 –

+1

放棄轉義序列。只用'「)」'。有關有效的轉義序列,請參閱http://stackoverflow.com/a/34958449/434551。 –

+0

我把它當作一個普通的角色來處理,它仍然拋棄了我所有的括號,這就是我試圖逃避它的原因。 – user5799707

回答

2

該警告來自C編譯器。這是告訴你,\不是C.一個已知的轉義序列,您需要雙擊逃避斜線,像這樣:\\

編輯:如果你只是想打印的括號,即)跌得共斜線及用途:

printf(")"); 
0

試試這個:

#include <stdio.h> 

int main() 
{ 
    printf("Printing quotation mark \")\" "); 
} 

你需要添加一個轉義字符,以獲得報價打印在這種情況下是\」

這將導致印刷引號「)」

0

只是寫在雙引號「」括號,括號,因爲不是一個轉義字符。

試試這個:

#include<stdio.h> 
int main(){ 
printf("()"); // print parenthesis here 
}