程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> struct-結構體指針作為實參的值傳遞問題

struct-結構體指針作為實參的值傳遞問題

編輯:編程綜合問答
結構體指針作為實參的值傳遞問題

#include
#include

struct Process
{
char name[5];
int again;
int serve;
char state;
struct Process *next;
};
void Set(struct Process *L)
{
struct Process Demo;
L=&Demo;
printf("%p\n",L);
}
int main(void)
{
struct Process *L=NULL;

Set(L);
if(L)
{
    printf("函數結束,空間釋放!\n");
    printf("%p\n",L);
}
else
    printf("L地址為NULL\n");

return 0;

}
程序的運行結果為:
0000000000FDF0
L的地址為NULL

在這個程序中,我在main函數中聲明了*L指針,本來打算在Set()函數中把L的地址改為Demo結構體變量的地址,可是程序的運行結果不對呀!怎麼回事?求詳解分析下!

只有1個幣了,只能這次酬謝這麼多了!謝謝吶!

最佳回答:


你的set函數中demo變量本來就是空值,你把它賦給L它肯定輸出空值啊

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved