天天看點

C++資料存儲、表示形式和基本運算

 目錄

​​前情提要​​

​​字元常量​​

​​普通字元​​

​​轉義字元​​

​​存儲方式​​

​​字元串常量​​

​​符号常量​​

​​常變量​​

前情提要

由于又開始學程式設計語言,就一些關于C++的比較常用的知識點記錄下,用來回憶C/C++的程式設計規則。

字元常量

普通字元

字元常量隻包括一個字元,如'a'這樣的是字元常量,'AB'這樣就不是字元常量。

字元常量區分大小寫,'a'與'A'是兩個字元。

轉義字元

以'\'開頭的特殊字元。例如'\n',轉移字元通常包含兩個及以上的字元,但它隻代表一個字元,在記憶體中隻占1個位元組。

如果要讓'\n'輸出了話,需要在轉移字元前加"\"

cout<<"\\n"<<endl;      
C++資料存儲、表示形式和基本運算

輸出:\n

存儲方式

字元常量存放在記憶體單元時,是将該字元對應的ASCII碼放到存儲單元。例如存放'a'的存儲單元,裡面存儲的是對應的ASCII碼值97。

字元串常量

字元串常量“abc”在記憶體中占4個位元組(而不是3個位元組),原因是編譯系統會在字元串最後自動加上一個'\0'作為字元串結束标志,存儲内容就變成了

存儲内容

a b c \0

cout<<"abc"<<endl;

輸出:abc

而不是abc\0。

字元常量'a'會比字元串常量“a”少一個位元組,前者有1個位元組,後者2個位元組。

字元串常量"abc\n",占4個字元,占5個位元組。

符号常量

#define PRICE 30

預定義一個字元串"PRICE"的值為30,将define範圍内的所有PRICE全部替換成30,并且後期無法對PRICE進行再次指派。

常變量

const

這個跟C語言又不一樣了。

在定義變量時,如果加上關鍵字const,則變量的值在後期不能改變(再次指派),這種變量稱為常變量。

const int a=3;      
C++資料存儲、表示形式和基本運算

也可以用表達式

const int a=3+6;      
C++資料存儲、表示形式和基本運算

#define與const的差別

沒有記憶體 有記憶體空間
可以用sizeof測出其長度
沒有類型