亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

C語言

C 語言內(nèi)存地址基礎(chǔ)

時間:2024-08-07 01:35:21 C語言 我要投稿
  • 相關(guān)推薦

C 語言內(nèi)存地址基礎(chǔ)

  從計算機內(nèi)存的角度思考C語言中的一切東東,是挺有幫助的。我們可以把計算機內(nèi)存想象成一個字節(jié)數(shù)組,內(nèi)存中每一個地址表示 1 字節(jié)。比方說我們的電腦有 4K 內(nèi)存,那這個內(nèi)存數(shù)組將會有 4096 個元素。當我們談?wù)撘粋存儲地址的指針時,就當相于我們在談?wù)撘粋存儲著該內(nèi)存數(shù)組某個元素索引的指針。逆向引用某個指針,將會得到數(shù)組中該索引所指向的值。這一切當然都是謊言。操作系統(tǒng)對內(nèi)存的管理要遠比這復(fù)雜。內(nèi)存不一定連續(xù),也不一定按順序處理。但前面的類比是一種討論C語言內(nèi)存的簡單方式。

  下面是小編給大家分享的C 語言內(nèi)存地址基礎(chǔ),快來看看吧。

  假設(shè)我們的計算機有 4K 的內(nèi)存,下一個開放地址的索引是2048。我們聲明一個新的字符變量i='a'。當該變量所獲得的內(nèi)存放置了它的值,變量的名字也與內(nèi)存中的該位置關(guān)聯(lián),我們的字符i就獲得了一個存儲在2048位置的值。該字符是單字節(jié)的因此它只占用了索引為 2048 的位置。如果我們對 i 變量使用地址操作符(&),它將返回到索引為2048的位置。如果這個變量是另一種類型,比如是 int,它將占用4字節(jié),在數(shù)組中占用索引為 2048-2051 的位置。使用地址操作符仍將返回索引2048的位置,因為 int 型即便占用了 4 字節(jié),但它開始于 2048 位置。我們看一個例子:

  // intialize a char variable, print its address and the next address

  char charvar = '