十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
因?yàn)镃語(yǔ)言中,參數(shù)的傳遞是數(shù)值傳遞方法,也就是說(shuō),在給函數(shù)傳遞參數(shù)時(shí),使用的不是你傳遞的實(shí)參的內(nèi)存空間,而是重新分配內(nèi)存,將實(shí)參的數(shù)值復(fù)制到新內(nèi)存中,被調(diào)用的函數(shù)就是使用新分配的內(nèi)存,函數(shù)返回時(shí),這些新內(nèi)存就會(huì)被釋放,而源內(nèi)存中的內(nèi)容沒(méi)有改變。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供集美網(wǎng)站建設(shè)、集美做網(wǎng)站、集美網(wǎng)站設(shè)計(jì)、集美網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、集美企業(yè)網(wǎng)站模板建站服務(wù),十余年集美做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
要想通過(guò)調(diào)用函數(shù)改變實(shí)參的值,就需要使用指針或引用的技術(shù)。
用三維指針。
#include?stdio.h
#include?stdlib.h
void?creat2Arr(int?***dest1,?int?x,?int?y)
{
int?**dest;
dest?=?(int?**)malloc(sizeof(int)*x);
int?i=0;
for?(?;?i??x;i++)
{
dest[i]?=?(int?*)malloc(sizeof(int)*y);
int?j=0;
for?(;?j??y;j++)
{
dest[i][j]?=i+j;
}
}
printf("%d",dest[0][0]);
*dest1?=?dest;
}
void?free2Arr(int?**dest,?int?x)
{
int?i;
for?(i=0;?i??x;i++)
{
free(dest[i]);
dest[i]?=?NULL;
}
free(dest);
dest?=?NULL;
}
int?main(void)
{
int?**a=NULL;
creat2Arr(a,10,10);
printf("%d",a[0][0]);
free2Arr(a,10);
return?0;
}
a=search(number);
參數(shù)傳遞沒(méi)有問(wèn)題 就是a要定義才能使用
而且
int search(char a[])如果是這樣定義的話 函數(shù)體里邊一定要有一個(gè)整形數(shù)的返回值才可以給變量a賦值
返回值是整形數(shù)的 不聲明應(yīng)該也可以
除了樓下說(shuō)的這個(gè)問(wèn)題:for(;p!='\0';p++)
day傳不進(jìn)去的原因是input函數(shù)中的str和p這些是局部變量,函數(shù)調(diào)用完之后就銷毀了,返回的p指向的內(nèi)存不能保證可用!