今天學習了C語言的字符串和轉義字符;我總結了以下的一些知識點來和初學C語言的小夥伴們ide
分享一下!也但願能獲得你們的指點或者能和你們一塊兒討論!學習
字符串的定義:"hello"像這種由雙引號引發來的一串字符稱之爲「字符串」,字符串的結束標誌是一個\0的轉code
義字符。字符串
而在計算字符串長度的時候\0是結束標誌,不算做字符串內容。 編譯器
例1string
#include<stdio.h>it
#include<string.h>io
int main(){編譯
char arr1[]="abc"; char arr2[]={'a','b','c'}; printf("%d\n",strlen(arr1)); printf("%d\n",strlen(arr2)); return 0;
} class
註釋:strlen由string和lenth組成,表示字符串長度,因爲計算字符串長度 。
運行結果爲(3 隨機數)但在加個\0即{'a','b','c','\0'}運行結果爲(3 3) ,而之因此會產生隨機數是由於
{'a','b','c'}中沒有結束標誌\0,因此編譯時不知道在什麼地方中止。
向\0這樣類型的字符就稱做爲轉義字符,就此我總結了C語言當中一些其餘的轉義字符,以下所示。
1 \?在書寫多個連續問號時使用,防止他們被解析成三字母詞( 例如'??)'會被一些原來的編譯器編譯成‘】’) 2 \'表示字符常量
3 \"表示一個字符串內部的雙引號
4 \a 表示警告字符,蜂鳴.
5 \用於表示一個反斜槓,防止它被解釋爲一個轉義序列符
6 \b退格符
7 \f進紙符
8 \回車
9 \v垂直製表符
10 \ddd(ddd表示1-3給八進制的數字。如;\130X
11 \xdd(dd表示2個十六進制數字。如:\x30 )
其中值得一提的是第10個轉義字符\ddd,以下示例。
例2
#include<stdio.h>
int main(){
printf("%c\n",'\132') return 0;
}
其中\132中132是3三個八進制數字 ,132做爲八進制的那個十進制數字,做爲ASCII碼值所對應的字符,
好比八進制132轉化爲十進制數爲70,而70對應ASCII碼錶的大寫Z,該代碼的運行結果也爲Z,由此
可知\ddd在編譯時只能看做一個字符的長度。