當前位置:
首頁 >
‘a’、“a”、‘abc’和“abc”的区别
發(fā)布時間:2024/10/14
31
豆豆
生活随笔
收集整理的這篇文章主要介紹了
‘a’、“a”、‘abc’和“abc”的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2018-01-14 創(chuàng)建人:Ruo_Xiao
開發(fā)環(huán)境:VS2010
1、‘a’:代表字符,用8個b存儲該字符的ASCII碼值,即97。
#include "stdafx.h" #include <iostream> using namespace std;int _tmain(int argc, _TCHAR* argv[]) {char c1 = 'a';char c2 = 97;char c3 = -97;char c4 = 129;char *p1 = &c1;char *p2 = &c2;char *p3 = &c3;cout<<"sizeof(c1) = "<<sizeof(c1)<<endl;cout<<c1<<endl;cout<<c2<<endl;cout<<c3<<endl;cout<<c4<<endl;cin.get();return 0; }
由上述代碼可知:
(1)給char型變量賦值時,‘a’和其ASCII碼值97的結果是一樣的,都被翻譯成了‘a’。
(2)存儲于8個b的內存塊。
(3)由于ASCII碼值是從1~128的,故給char型賦128以上的數或者小于1的數,程序無法顯示。
(4)經過調試,得到:
p1的值為0x002aff23;
p2的值為0x002aff17;
在內存表中,這兩個值如下:
上圖中“61”是十六進制,轉化為十進制為97,故char型值在內存中存儲的是其ASCII碼值。
2、“a”代表字符串,編譯器會自動翻譯成“const char[2]”,其末尾會自動加上’\0’,故其代表了字符數組!
3、‘abc’:按理報錯,但是vs2010做了一些處理,實驗結果如下:
(1)只取最后一個字符。
(2)字符數量有限制,只能是小于5個,大于等于5都報錯。
4、“abc”同理于“a”。
總結
以上是生活随笔為你收集整理的‘a’、“a”、‘abc’和“abc”的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C中标识符和关键字
- 下一篇: L、TEXT()、_TEXT()和_T(