單引號和雙引號

2021-06-16 14:12:02 字數 819 閱讀 6932

char* p1 =  1 ;

char* p2 = '1';  『1』的ascii碼值為49

0和49位址處為作業系統使用,故訪問這些位址如printf("%s, %s, %s", p1, p2, p3)會產生段錯誤。

printf('\n')  \n的ascii碼值為10,同理,段錯誤。

'a'表示字元常量,在記憶體中佔1個位元組,'a'+1表示'a'的ascii碼加1,結果為『b』

"a"表示字串常量,在記憶體中佔2個位元組('a'和『\0』),"a"+1表示指標運算,結果指向"a"結束符'\0'

char c = " "; 

while( c=="\t" || c==" " || c=="\n" )

scanf("%c", &c);

}" "代表乙個該字串的位址,假設" "位址為0xaabbccdd,而c為8位,只能為0xdd,所以while無法執行,應把」「改為『』即可

本質上單引號括起來的乙個字元代表整數;

雙引號括起來的字元代表乙個指標;

c編譯器接受字元和字串的比較,可意義是錯誤的;

c編譯器允許字串對字元變數賦值,其意義是可笑的。

單引號( )和雙引號( )

關鍵是要養成良好的習慣.單引號 一般用在單字元,如 c 雙引號 一般用在字串,如 abc 如果巢狀使用的話,一般用交替方法,尤其是html中.如,也可以改成.在分割乙個字串時要用到str.split或者regex.split。簡單的單個字串的替換,直接用字串.split 單個字串 多個字串的替換用r...

mysql單引號 mysql單引號和雙引號

表名,列名最好用 esc下面那個,不用 會出錯 這就要從雙引號和單引號的作用講起 雙引號裡面的字段會經過編譯器解釋然後再當作html 輸出,但是單引號裡面的不需要解釋,直接輸出。例如 abc i love u echo abc 結果是 i love u echo abc 結果是 abc echo a...

2 3 單引號和雙引號

1 低位的位址是給作業系統用的 2 char p1 1 p1指向位址為1的記憶體 給作業系統用 char p2 1 p2指向位址為49的記憶體 給作業系統用 char p3 1 p2指向字串首位址,字元1的位址 p1和p2指向了不該指的地方,形成野指標 3 c語言中的單引號用來表示字元常量 4 c語...