亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

Linux C語言指針與內存

難度初級
時長 2小時 5分
學習人數
綜合評分9.60
263人評價 查看評價
9.9 內容實用
9.5 簡潔易懂
9.4 邏輯清晰
    • 1.int array[5];

      arrray += 2;????????//錯誤, array是常量指針(int const *array),不能被修改.

    查看全部
    0 采集 收起 來源:指針運算

    2022-02-10

    • C程序中的各個變量的地址與編譯后的二進制程序中變量的地址并沒有一一按照順序存儲,原因是編譯器對程序進行了一定的優化,調整了變量在棧中的存儲順序。

    查看全部
  • 棧的特點:先進后出

    查看全部
  • 32bit:4個字節

    64bit:8個字節

    查看全部
  • 表示位置

    查看全部
    1. 變量只是一個代號,它的本質是內存。

    2. 指針保存的是內存地址。

    查看全部
    1. 地址總線有多少位,尋址空間就有多少位。地址總線可以存在多種狀態:32根地址總線就有2的32次方個狀態。

    2. 比如:32位指的是給內存編號只能編到32個二進制位。

    查看全部
    0 采集 收起 來源:內存管理

    2021-11-18

  • 十六進制:

    二進制:滿二進一

    查看全部
  • 堆內存:是區別于棧區、全局數據區和代碼區的另一個內存區域。堆允許程序在運行時動態地申請某個大小的內存空間。

    棧內存:每一塊保留一塊堆內存地址,存取速度比堆快,僅次于寄存器,棧數據可以共享,但缺乏靈活性。

    內存地址

    指針變量的實質:是一個概念也是一個變量,整形指針、字符指針、浮點指針是指針的具體浮現,常量由編譯器決定。

    指針不是地址,是地址加偏移量。

    查看全部
  • ?int*?a;這里的a就是代表指針變量(int*),而不是一個整型變量(int)所以a存放的是地址,*a才是地址中存放的值(這里的*與第一行的*不同,這個*是取地址的意思)

    查看全部
  • 用于調試的編譯問件:gcc -g 文件名.c -o 文件名.out

    調試文件:gdb 文件名.out進入調試狀態,

    ????????列出當前項目軟件源代碼:l/list,若顯示不完整,直接回車鍵即可繼續顯示? ? ? ? ? ? ??

    ????????設置斷點:break 行數? ? ? ? ? ? ??

    ????????單步調試:start? ? ? ? ? ? ??

    ????????查看變量的值: p/print 變量名? ? ? ? ? ? ??

    ????????進行下一步:n

    ????????進入某一步中查看,在進行到該步時,:s/step?

    ????????查看函數堆棧:bt? ? ? ? ? ? ??

    ????????查看函數堆棧是,查看某一堆棧:f 堆棧行

    ????????回車:重復執行上個步驟

    查看全部
  • 指針,本質是一個地址
    代表指針的數據本身也有一個地址,但這個沒用
    給指針賦值的時候,給的是被賦值量的地址

    查看全部
  • 一個指針是一個地址,32位是32/8=4字節,
    64位是64/8=8字節。
    查看全部
  • str[3]是字符串第四個字母l,將其改為\0就將字符串結束了。

    str在內存存放結束后就是str3開始存放。

    str只有6位空間,輸入超過六位之后,編譯器會將多余的輸入從str的地址開始,一直向內存中輸入。

    c語言的字符串數組,本質是字節數組,存放了很多字節。

    查看全部
  • str3[]是字符數組,所以str3可以直接作為地址,在scanf語句當中就不用&str3的表達方式了。

    "hello"這個字符串有5個字符,字符串結尾還有一個\0,所以一共有6個。

    x/6cb:表示向下打印6個字符,用比特為單位。

    用scanf輸入str2,對其進行改動,不能完成值的更改,因為指針的內容在運行過后,會儲存在代碼段,無法被更改。

    查看全部

舉報

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

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!