1. 程式人生 > >關於內存單元、字節、字符等

關於內存單元、字節、字符等

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”總會在字符串的後一位。

關於內存單元、字節、字符等