这个有关问题应该没有关问题的

这个问题应该没问题的这个建一个数组的函数应该没错的,但我用TURBOC运行的时候显示出错了.说是语法说明错

这个问题应该没问题的
这个建一个数组的函数应该没错的,但我用TURBO   C运行的时候显示出错了.说是语法说明错误.有哪位能帮我看一下吗?
int   Create_Sq(SqList   &L){
int   i,k   =   3000;
printf( "Create   3000   rand   numbers   : ");
L.length=k;
srand(   (unsigned)time(   NULL   )   );
for(i=1;i <=k;++i){
L.r[i].key   =   rand();
printf( "%d ",L.r[i].key   );
}
return   1;
}

[解决办法]
哦 有这等怪事..... int Create_Sq(SqList &L)是c++上的语法,SqList &表示一个引用。c语言没有的,所以编译器报告说语法错误。你可以用指针来传递int Create_Sq(SqList *pl),也可传递SqList的一份拷贝,int Create_Sq(SqList L)。注意,你要用指针传递的时候,主程序里要改动下,调用的时候应该给的是一个地址Create_Sq(&L);