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

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

Linux C語言指針與內存

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

已采納回答 / DoDream
等號左邊的意思是定義一個函數指針pquadrate,將quadrate函數的地址賦給pquadrate,quadrate是一個返回值是int,有一個int參數的函數。推薦你一個不錯的網站,百度搜索C++技術網,第一個就是了,里面有一些C語言的教程,那些人寫得挺用心,通俗易懂,能學的東西還挺多,這個網站還有很多不錯的資源可以下載,例如電子書,IDE等,如果你技術上來了,還可以去做一下里面的練習小項目,感覺收獲豐富。

已采納回答 / onemoo
編譯器不會對數組訪問越界進行檢查。因為數組和指針是有密切聯系的,很多時候編譯器無法確定你訪問的位置是否在合理的范圍內,所以編譯器就干脆對此不檢查了。 ?實踐中,有經驗的程序員經?;钣眠@種數組和指針的關系。當然,你這兩行代碼確實是錯的,對array[3]的訪問確實越界了。雖然能編譯通過,但運行時可能會發生錯誤。

最贊回答 / MLKG88
你的輸出是對的,我的和你的一樣,可能是你的代碼和視頻的代碼不同
定義指針變量時在變量類型和變量名中間加個 *, 指針變量的值本身是一個地址,在使用指針變量時,如果,在指針變量前加一個*表示取指針變量的值表示的地址中的內容,如果不加*則表示取指針變量的值,就是指針變量存的地址。
函數指針,不過說白了就是這樣:
int quadrate(int a);
// main中
int a=3;
int (*p)(int a);
p = &quadrate;
int s = (*p) (a);
//最后就相當于quadrate(a)
&a:返回變量a的內存地址

*a:用來保存變量a的內存地址

&和*運算符恰好相反。&運算符接收一個數據,然后告訴你這個數據保存在哪里;*運算符接收一個地址,然后告訴你這個地址中保存的是什么數據。

例:int *a = &a

已采納回答 / 霧青依
這是因為int array[2]還有一個為'\0'的結束數組符,而int array[]={0,1}則沒有'\0'這個結束符
說得很好,很清晰。這才是計算機C語言課程,以前上的課都沒懂,看這個就懂了。強大。
老師語速好快~這個視頻一定是要求中文聽力專業8級的 哈哈
^_^ 講的不錯
電牛~電流,老師口音
聽不懂,先標記一下
課程須知
本課程是C語言中級課程,為了更好的學習效果: 1、需要有一定的C語言基礎,如果沒有基礎的同學可以看《C語言入門》這門課。 2、本課程是在Linux環境下講解,需要熟悉一些Linux命令。如果不了解的話可以在《Linux C語言編程基本原理與實踐》這門課程中補充
老師告訴你能學到什么?
1、C語言中的指針是怎么回事 2、Linux下gdb調試工具是怎樣使用的 3、指針與內存有著怎樣的關系 4、數組與字符串之間的聯系

微信掃碼,參與3人拼團

微信客服

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

幫助反饋 APP下載

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

公眾號

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

友情提示:

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

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消