重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
你的櫻侍地址值傳遞錯誤,按照我給你修改的試試看,一定要注意你的實參傳遞的是地址還是具體的值,如果是地址,在子函數(shù)中就不要去修改你傳遞進來的地址。
創(chuàng)新互聯(lián)公司是一家企業(yè)級云計算解決方案提供商,超15年IDC數(shù)據(jù)中心運營經(jīng)驗。主營GPU顯卡服務(wù)器,站群服務(wù)器,服務(wù)器托管,海外高防服務(wù)器,大帶寬服務(wù)器,動態(tài)撥號VPS,海外云手機,海外云服務(wù)器,海外服務(wù)器租用托管等。
int
main(void)
{
int
data=0;
//此處隨機分脊鎮(zhèn)吵配內(nèi)旅基存空間,不要用指針
myStack=makeStack(myStack,top);
Push(myStack,3);
Push(myStack,8);
Push(myStack,19);
Push(myStack,31);
Push(myStack,43);
Push(myStack,36);
Pop(myStack,data);//此處,傳遞的是地址值
printf("%d
",data);
}
int*
Pop(LinkedStack
myStack,int
*data)
{
pStack
cursor=myStack;
if(Stack_Empty())
{
}
else
{
while(cursor-next!=top)
{
cursor=cursor-next;
}
*data=top-data;
//此處,只是在同一個內(nèi)存空間修改其值,所以不要取地址
top=cursor;
return
data;
}
}
*x++和首尺毀*x = *x + 1完全兩個意思,你這是誤會了。
提示一下,者備跟指針沒什么困埋關(guān)系,和優(yōu)先級有關(guān)。
可以,但洞戚子函數(shù)中要謹慎處理,不然會出問題,如
int fun( int *p )
{
//if ( *p !=0 ) 錯誤的引用方法,會導致程序異常
if ( p *p ) //正確的稿顫鄭引用方法,保證p不是NULL時才讀。
return 1;
return 0;
}
void main()
{
int x=fun(NULL) ;
}
經(jīng)常用到的time(NULL); 也是傳NULL指針的一個應(yīng)用鍵頌。