為什么程式這樣寫會報錯,主函式中沒用指標來進行資料傳遞
#include <stdio.h>
#define Size 10 //定義陣列的大小
typedef struct line
{
int data[Size];
int Length; //當前陣列中資料的個數
}Line;
void Creat(Line L, int len); //第一個形參為線性表,第二個形參為要輸入資料的個數
void Print(Line L, int len); //輸出資料
int main()
{
Line lin;
Creat(lin, 5);
Print(lin, 5);
getchar();
getchar();
return 0;
}
uj5u.com熱心網友回復:
報什么錯了?Creat和Print函式怎么實作的?uj5u.com熱心網友回復:
樓主的代碼可以貼全一些。從資料結構和引數型別可知,Creat函式的第一個引數應該傳&lin才可以,當然函式定義里第一個引數應該是Line *L。
否則不能從Creat函式里得到你想要的資料。
uj5u.com熱心網友回復:
說到底還是傳值和傳地址的問題uj5u.com熱心網友回復:
就目前的代碼看,應該沒啥錯誤,結構體名也是可以做引數傳入的,只是用的比較少而已轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/20749.html
標籤:C語言
下一篇:fit1045
