1、因?yàn)樵诤瘮?shù)調(diào)用期間的局部變量,當(dāng)這個(gè)函數(shù)返回時(shí),局部變量將會(huì)消失(被系統(tǒng)回收)而不復(fù)存在,所以若返回一個(gè)局部變量的指針,則返回后就變成一個(gè)“野指針”。

創(chuàng)新互聯(lián)建站專(zhuān)注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站制作、成都網(wǎng)站制作、庫(kù)車(chē)網(wǎng)絡(luò)推廣、微信平臺(tái)小程序開(kāi)發(fā)、庫(kù)車(chē)網(wǎng)絡(luò)營(yíng)銷(xiāo)、庫(kù)車(chē)企業(yè)策劃、庫(kù)車(chē)品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供庫(kù)車(chē)建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:chinadenli.net
2、對(duì)象的成員就有了,直到對(duì)象被析構(gòu)掉,該對(duì)象的成員生命周期結(jié)束。局部變量的生命周期不會(huì)比它所在的函數(shù)長(zhǎng),返回時(shí)這個(gè)函數(shù)使用的內(nèi)存都被收回了,更不存在保存局部變量的那塊內(nèi)存了,它的引用更沒(méi)有意義了。
3、局部變量是存在于棧中的,函數(shù)被調(diào)用時(shí)先在棧中為變量申請(qǐng)空間,調(diào)用完成釋放變量空間。
1、首先你要理解運(yùn)行時(shí)執(zhí)行棧的概念,運(yùn)行在一個(gè)函數(shù)中的時(shí)候,局部變量是依次壓在棧區(qū)的,函數(shù)返回后釋放,相同的地址可能被下一個(gè)運(yùn)行的函數(shù)中的局部變量重用。
2、因?yàn)樵诤瘮?shù)調(diào)用期間的局部變量,當(dāng)這個(gè)函數(shù)返回時(shí),局部變量將會(huì)消失(被系統(tǒng)回收)而不復(fù)存在,所以若返回一個(gè)局部變量的指針,則返回后就變成一個(gè)“野指針”。
3、p是指向局部變量的指針,當(dāng)函數(shù)退出時(shí),局部變量會(huì)被釋放,這時(shí),p所指向的位置就不一樣是原來(lái)的數(shù)。 因?yàn)閒un()函數(shù)返回的值被計(jì)算機(jī)的臨時(shí)變量存放,當(dāng)賦值給p的時(shí)候,p是指向臨時(shí)變量的地址,所以還可以讀取出100。
4、指針指向的地址的值進(jìn)行了交換,這樣就修改了內(nèi)存里面的值,即便是函數(shù)結(jié)束了也不會(huì)釋放,自然就能做到交換了。
5、指針里的值是可以返回的 就像你說(shuō)的 “return i,主調(diào)函數(shù)知道一個(gè)i就可以了 ”同樣主函數(shù) 知道一個(gè)指針里的地址就可以了。
6、局部變量在局部結(jié)束后是會(huì)釋放的。看以下:int abc(){ char*p = (char*)malloc(10);} abc() 函數(shù)被調(diào)用完后p本身被釋放了,但是p存的值(一個(gè)地址)所指向的內(nèi)存塊是沒(méi)有被釋放的,必須要手動(dòng)調(diào)用free函數(shù)來(lái)釋放。
1、struct student *p, *q, *head;這里head不就是 struct student 類(lèi)型的指針么。
2、函數(shù)A的返回值錯(cuò)誤。雖然地址和指針很像,但還是不同的兩個(gè)東西。而且,一旦出了函數(shù)A,返回的地址,也就該被回收,會(huì)導(dǎo)致程序出錯(cuò)。是非常危險(xiǎn)的行為。舉個(gè)例子說(shuō)明下吧。
3、week_day作為lookstr()的參數(shù),經(jīng)過(guò)函數(shù)lookstr()提取之后,return(table[day]),得到一個(gè)靜態(tài)字符串的指針;輸入數(shù)字有誤情況下return(NULL)。
4、p是指向局部變量的指針,當(dāng)函數(shù)退出時(shí),局部變量會(huì)被釋放,這時(shí),p所指向的位置就不一樣是原來(lái)的數(shù)。因?yàn)閒un()函數(shù)返回的值被計(jì)算機(jī)的臨時(shí)變量存放,當(dāng)賦值給p的時(shí)候,p是指向臨時(shí)變量的地址,所以還可以讀取出100。
5、void定義過(guò)后的函數(shù)不是說(shuō)它沒(méi)有返回值,而是它返回的是個(gè)空,也就是null,可以加return null,也可以不加。
分享題目:c語(yǔ)言函數(shù)返回局部指針 c++函數(shù)返回局部對(duì)象
文章網(wǎng)址:http://chinadenli.net/article39/deihgsh.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、服務(wù)器托管、企業(yè)建站、全網(wǎng)營(yíng)銷(xiāo)推廣、品牌網(wǎng)站制作、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)