我有一個代碼:必須排序的結構數組。程序工程,但:無法理解程序(排序結構數組)
我不明白,如果Mat
是指針,爲什麼不是void sort(tArt *sMat)
,但void sort(tArt sMat[])
。我真的很困惑。
typedef struct{
char data[26];
}tArt;
...
int main(void)
{
FILE* fMat; fMat=fopen..........
tArt* Mat;
...
Mat=malloc(sizeof(tArt));
for(i=0;i<N;i++) fread(&Mat[i],sizeof(tArt),1,fMat);
fclose(fMat);
sort(Mat,N);
...
}
void sort(tArt sMat, int num) {...........}
tArt *和tArt []是等價的。 – semao 2013-02-25 16:16:00
如果你想要一個_real answer_ post _real code_;至少是一個你不瞭解的行爲[簡短的獨立可編譯示例](http://sscce.org)。大部分代碼不需要使用'sort',而實際執行的部分可能是錯誤的 - 至少在當前的列表中。 – Zeta 2013-02-25 16:17:25
無法與@Zeta達成更多共識。一堆散佈的橢圓並不是一個程序。 – 2013-02-25 16:27:24