關於內存單元、字節、字符等
阿新 • • 發佈:2017-08-20
col color bit 什麽 英文 abc nbsp 都是 abcd
正在學習這些概念,現在可能理解有誤。
1.bit:也稱為位,即為一個二進制位(0或是1),8 bit=1 byte。這是計算機最小的存儲單位。
2.字節:byte,計算機的存儲單位,1字節(1B)=1內存單元。所以一個內存單位有8 bit,即8個二進制位。
以上這兩點應該是沒疑問的。
3.字:word,自然的存儲單位(這個讓我很糾結)。8位機,1字=8bit;16位機,1字=16bit;32位機,1字=32位;.......類推。
所以如今這能這樣理解,1個英文字母=1個內存單位=1字節=8bit。
例如:
char str[10];
str這個字符串數組中,有10個內存單元,即能放9個"abcd"這類的字符。為什麽只能放9個呢?
因為字符串在內存單元中都是以“\0”結尾的,“\0”要占一個內存單元。
所以,str[10]在內存中開辟了10個內存單元,加上“\0”,就只能放下9個字符了。
舉例:
下面是內存單元格,
str[10]=| | | | | | | | | | | ;
那麽,str[10]="abcde";——>| a | b | c | d | e | \0 | | | | | ;
如果是str[10]="abcdefghi";——>| a | b | c | d | e | f | g | h | i | \0 | ;
即是說:“\0”總會在字符串的後一位。
關於內存單元、字節、字符等