第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

Linux C語言指針與內(nèi)存

難度初級
時長 2小時 5分
學(xué)習(xí)人數(shù)
綜合評分9.60
263人評價 查看評價
9.9 內(nèi)容實用
9.5 簡潔易懂
9.4 邏輯清晰
  • int *p=&a:定義的指針p是整型數(shù)據(jù),p++之后,p中的地址就會增加4個字節(jié)。

    這就是指針偏移運(yùn)算,這種方式比CPU直接取地址效率還要高,所以設(shè)計程序都會盡可能地采取這種方式。

    p+=3:將指針向下移動3格,如果p是整型,就移動12個字節(jié)。(等價于p[3])

    數(shù)組和指針的本質(zhì)都是地址,所以*pa=array,相當(dāng)于將array數(shù)組的地址賦值給pa指針,這樣pa[1]的功能和array[1]的功能就沒有區(qū)別了。

    數(shù)組是指針常量,指針是指針變量,數(shù)組的指向?qū)ο笫枪潭ú蛔兊模羔樧兞康闹赶驅(qū)ο髸淖?,所以這兩種指針還是有所差別的,指針能實現(xiàn)數(shù)組的功能,但是數(shù)組不一定能實現(xiàn)指針的功能。

    查看全部
    0 采集 收起 來源:指針運(yùn)算

    2021-07-18

  • 在函數(shù)名前加上星號,也可以調(diào)用函數(shù),一般用作回調(diào)函數(shù)使用。(第31行)

    查看全部
  • 全局變量儲存在數(shù)據(jù)段,先申明的地址小,后申明的地址大,調(diào)用的函數(shù)里的局部變量存放在棧中。

    int整型占用4個字節(jié),變量的內(nèi)存地址只顯示第一個字節(jié)。

    編譯后的程序,有可能不會將變量按照編寫代碼的順序存入內(nèi)存,因為gcc編譯時會對代碼進(jìn)行優(yōu)化,它會將同類型的變量在內(nèi)存中放到一起。

    查看全部
  • 調(diào)用的哪個函數(shù),運(yùn)行到函數(shù)的哪一行,變量的相關(guān)數(shù)據(jù)都被記錄保存到棧當(dāng)中了。

    p &x:表示查看x變量所在的地址。

    變量的本質(zhì)是地址,是內(nèi)存空間。

    標(biāo)準(zhǔn)的編程語言不允許直接對內(nèi)存地址進(jìn)行操作,操作系統(tǒng)不允許。

    指針也是一個變量類型,保存內(nèi)存地址。

    查看全部
  • 0x7fffffffffffffff以下的內(nèi)存由用戶操作,上面的內(nèi)存地址由操作系統(tǒng)自己調(diào)用。

    代碼段放編譯后的程序,數(shù)據(jù)段放常量、變量,中間的綠色是自由可分配空間。

    查看全部
    0 采集 收起 來源:內(nèi)存管理

    2021-07-17

  • 一般用gcc指令編譯過的程序不能被用于gdb(一個Linux自帶的調(diào)試工具)調(diào)試,要用gcc -g xxx.c指令才可以。

    用gdb調(diào)試要保存.c的源代碼,否則會有一些調(diào)試功能無法使用(比如調(diào)試時無法顯示行號)。

    gdb ./xxx.out:表示調(diào)試xxx文件

    在調(diào)試模式下(括號中含有g(shù)db),輸入l(或者list)顯示整個源代碼,輸入break打斷點(diǎn),輸入start開始調(diào)試(此時會顯示斷點(diǎn)在哪里),p x表示輸出x這個變量的值,n繼續(xù)下一步執(zhí)行,當(dāng)斷點(diǎn)打到調(diào)用的函數(shù)前可以用s指令來進(jìn)入函數(shù)內(nèi)部,bt查看函數(shù)堆棧(可以顯示當(dāng)前函數(shù)調(diào)用的堆棧情況), f n代表轉(zhuǎn)到相應(yīng)的標(biāo)號n堆棧進(jìn)行函數(shù)的調(diào)用。

    本次練習(xí)案例中,change函數(shù)的a和b是形參,他們值的改變,不能代表main函數(shù)里的實參也改變了。

    按q退出調(diào)試

    查看全部
    0 采集 收起 來源:gdb工具的使用

    2021-07-16

  • *a代表指針,&a代表取地址

    查看全部
  • 晚安
    查看全部
  • http://img1.sycdn.imooc.com//604325c80001a86411170632.jpg1

    查看全部
    0 采集 收起 來源:內(nèi)存管理

    2021-03-06

  • 內(nèi)存地址采用十六進(jìn)制數(shù)表示,十六進(jìn)制數(shù)都是以0x開頭,十六進(jìn)制數(shù)的每一位可以表示四個二進(jìn)制數(shù),因此對于一個32位系統(tǒng),其所有的內(nèi)存空間地址可以被八位十六進(jìn)制數(shù)表示。 每個十六進(jìn)制的內(nèi)存地址都指向一個字節(jié)的內(nèi)存空間,因此32位的系統(tǒng)總共可以配置2^10*2^10*2^10*2^2=4GB的內(nèi)存; 對于64位操作系統(tǒng),只有前48位編碼的地址用于程序存儲,后十六位為系統(tǒng)內(nèi)核保留使用的地址編碼段; 內(nèi)存地址從低到高依次編碼存儲代碼段(函數(shù)體指令等)、數(shù)據(jù)段(常量和全局變量)、堆、自由空間、棧。
    查看全部
  • 內(nèi)存
    查看全部
  • 什么?
    查看全部
  • 你好啊
    查看全部
    0 采集 收起 來源:gdb工具的使用

    2021-01-26

  • 你好
    查看全部
    0 采集 收起 來源:gdb工具的使用

    2021-01-26

  • 如果想用GDB gcc -g *.c -o *.out
    查看全部
    0 采集 收起 來源:gdb工具的使用

    2021-01-26

舉報

0/150
提交
取消
課程須知
本課程是C語言中級課程,為了更好的學(xué)習(xí)效果: 1、需要有一定的C語言基礎(chǔ),如果沒有基礎(chǔ)的同學(xué)可以看《C語言入門》這門課。 2、本課程是在Linux環(huán)境下講解,需要熟悉一些Linux命令。如果不了解的話可以在《Linux C語言編程基本原理與實踐》這門課程中補(bǔ)充
老師告訴你能學(xué)到什么?
1、C語言中的指針是怎么回事 2、Linux下gdb調(diào)試工具是怎樣使用的 3、指針與內(nèi)存有著怎樣的關(guān)系 4、數(shù)組與字符串之間的聯(lián)系

微信掃碼,參與3人拼團(tuán)

微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復(fù)購買,感謝您對慕課網(wǎng)的支持!