輸出是什麼? 我很困惑的\\
。它是如何工作的?以下C程序的輸出結果如何?
#include <stdio.h>
void main(){
printf("\\nab");
printf("\\bsi");
printf("\\rha");
}
輸出是什麼? 我很困惑的\\
。它是如何工作的?以下C程序的輸出結果如何?
#include <stdio.h>
void main(){
printf("\\nab");
printf("\\bsi");
printf("\\rha");
}
輸出結果爲\nag\bsi\rha
。 字符串"\\"
轉換爲文字"\"
。
這是因爲\n
象徵了一條新的線,並且單個字符\
還有其他幾個用途。如果它不以這種方式工作,則將無法打印文字\n
。
答案將是:
\nab\bsi\rha
1 - 三個文本打印在一起,因爲你正在使用printf
沒有轉義字符\n
,如果改用
...
printf("\\nab\n");
printf("\\bsi\n");
printf("\\rha\n");
...
您將得到
\nab
\bsi
\rha
在第一次打印時,您正在編寫\n
這意味着一個新行,但是您聲明瞭兩個斜槓,表示按原樣打印一個斜槓(在C中打印一個斜槓,您必須使用\\(二),因爲單斜槓被假裝用於\ n)等特殊轉義字符。
嘗試執行你原來用它看到的主要區別:
#include <stdio.h>
void main()
{
printf("\nab\n"); /* Note that I am using a escape character \n to make a new line after each print */
printf("\bsi\n");
printf("\rha\n");
}
基本上,如果這個\
之前特殊字符時,它被稱爲轉義文字。這是做什麼的,刪除它的正面的特殊字符的功能。例如: 例如:Incase要在輸出中打印此行:Hi this, ", is a quote symbol
。您可以將它寫爲:printf("Hi this, \", is a quote");
對於轉義序列(例如\ n \ t \ b),類似地從中刪除特殊字符\
將需要轉義字面量。
你試過編譯並執行它?在那種情況下,結果是什麼,你期望什麼? –