C語言中的字符常量是由單個字符組成的常量,使用單引號括起來,例如 ‘a’。而字符串常量是由多個字符組成的常量,使用雙引號括起來,例如 “hello”。
區別如下:
- 表示方式:字符常量使用單引號括起來,字符串常量使用雙引號括起來。
- 類型:字符常量是char類型,字符串常量是char數組類型。
- 存儲方式:字符常量在內存中占用1個字節,存儲的是ASCII碼對應的整數值;字符串常量在內存中占用多個字節,以字符串的形式存儲。
- 結束符:字符常量不需要結束符,字符串常量需要以’\0’作為結束符。
- 賦值:字符常量可以直接賦值給字符變量,字符串常量需要使用strcpy()函數或者直接賦值給字符數組。
- 操作:字符常量可以進行字符類型的運算,字符串常量可以使用字符串相關的庫函數進行操作,如strlen()、strcat()等。
- 可變性:字符常量是不可變的,字符串常量也是不可變的。
總結來說,字符常量是單個字符的常量,字符串常量是由多個字符組成的常量,兩者在表示方式、類型、存儲方式、結束符、賦值、操作和可變性等方面有所區別。