新聞中心
c語言,函數(shù)返回?cái)?shù)組指針出錯(cuò)為什么啊
1、p指向的是數(shù)組a的空間,而a是局部變量,離開函數(shù)作用域后會(huì)被銷毀。建議將a聲明為全局變量或靜態(tài)變量。(2).a是二維數(shù)組,所以p也應(yīng)該是二維指針。
海珠網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),海珠網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為海珠成百上千提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的海珠做網(wǎng)站的公司定做!
2、第一個(gè)人的回答蠻好,你這里返回的確實(shí)是地址,但是在函數(shù)執(zhí)行玩后,被系統(tǒng)回收了,因?yàn)槟阌玫氖且粋€(gè)局部變量的地址,所以不管你怎么返回都沒有意義了。
3、在C語言中,無法直接返回一個(gè)數(shù)組,但是可以通過返回對(duì)應(yīng)類型指針的方式,返回?cái)?shù)組。在大多數(shù)情況下,一維數(shù)組和一維指針是可以通用的。比如,定義一個(gè)函數(shù),申請(qǐng)一定長(zhǎng)度的整型動(dòng)態(tài)數(shù)組,其長(zhǎng)度用參數(shù)傳入,并將結(jié)果返回。
4、類型是不一樣的,C_Address的類型是const int8_t(*)[3],返回值的類型是const int8_t*他們的類型是不一致的。
C語言函數(shù)指針很糾結(jié)的問題,請(qǐng)達(dá)人解惑……
在函數(shù)定義語句中得參數(shù)叫作形參(形式參數(shù)),而實(shí)際參加運(yùn)算的是實(shí)參(實(shí)際參數(shù))。
首先%s是最常見的很好理解,就是告訴程序后面的變量是一個(gè)字符串,在C語言中也就是字符數(shù)組,類型是char*或者char[],換句話說,你告訴程序我會(huì)給你一個(gè)指針,你去讀這個(gè)指針指向的值。
fun(a)(*fun)(a)(fun)(a)效果都是一樣的。fun和*fun的值也是一樣的。
不行, 原因是found函數(shù)已經(jīng)聲明成返回一個(gè)int指針的函數(shù)了,如果不聲明p為指針則在p=founc(a,n)時(shí)會(huì)因?yàn)轭愋筒黄ヅ涠鴪?bào)錯(cuò)。
int min_real;int d_real;fun(array,10,&min_real,&d_real);這個(gè)例子中,min_real是實(shí)際的int變量,用于返回最小值,d_real用于返回下標(biāo)。
為什么我的C語言程序在調(diào)用函數(shù)時(shí)出現(xiàn)錯(cuò)誤?
1、庫函數(shù)拼寫錯(cuò)誤。如:printf,scanf,等 定義的函數(shù)名在調(diào)用時(shí),函數(shù)名拼寫錯(cuò)誤 在執(zhí)行函數(shù)時(shí)可能函數(shù)體本身的問題,有沒有實(shí)現(xiàn)該函數(shù) 檢查一下任務(wù)欄,一般出現(xiàn)這種問題都是你上一次“運(yùn)行”的小黑窗還沒關(guān)。
2、首先,你定義的那些函數(shù),最好改為void printst(void),下面那幾個(gè)也一樣,因?yàn)檫@樣很容易讓人知道你寫的函數(shù)是什么類型。
3、就行了。不用寫類型。includestdio.h// float area(float R); // 函數(shù)原型聲明放這里好點(diǎn)。void main(){ float area(float R); // 這是函數(shù)原型聲明,所以要寫清楚數(shù)據(jù)類型。
4、C語言要求調(diào)用某一個(gè)函數(shù)之前,一定要知道該函數(shù)的定義。
5、首先,你把INSERTIONSORT()函數(shù)定義在main()函數(shù)里面是錯(cuò)誤的 其次,int INSERTIONSORT(r[],10); //這樣調(diào)用肯定不行啦 其三,樓主對(duì)函數(shù)聲明,實(shí)現(xiàn),調(diào)用還沒有最基本的認(rèn)識(shí)。
6、lnode node;這里定義了一個(gè)結(jié)構(gòu)型變量node,node.next這個(gè)指針未初始化,指向不確定的內(nèi)存地址。insert_l函數(shù)里這句q-next = p-next;最后print_l函數(shù)訪問這個(gè)指針指向的數(shù)據(jù)時(shí)出錯(cuò)。
標(biāo)題名稱:c語言函數(shù)指針編譯錯(cuò)誤 c語言指針常見錯(cuò)誤
文章網(wǎng)址:http://www.dlmjj.cn/article/dsjhgce.html