显然,L是SqList型指针,length和listsize是SqList中的两个元素。只要这两个元素的类型相同或是可以运算的类型,这个if句就不会报错。至于能不能达到预期的效果那就要看比较逻辑是否正确,表面上是看不出来的。不知道你说的“成立”是能通过编译还是关系运算为“真”的意思,所以不好再向下回答……
编译总报错。void ListReverse_Sq(SqList &L){ int m,n; for(m=0;m<L.length/2-0.5;m++){ n=L.elem[m]; L.elem[m]=L.elem[L.length-m-1]; L.elem[L.length-m-1]=n; }} GAtties 帕秋莉糕 12 是.cpp吗?用了引用,要用C++编译,否则改成指针 light 麻婆豆腐 11 有任何问题...
int InitList(SqList &L)&表示引用,而c语言中没有引用,那个是c++中的 vc它也识别不了,只是当成warning 对于修改实参值我们都是通过指针来实现的(也可以用函数返回值);即int InitList(SqList *L)你那个是将结构体作为实参传进去的,而不是这个结构体的地址 ...
sqlist 是用户自己定义结构体,看你自己的结构体是怎么定义了,还有,creatlist函数也是自己定义的,参数的类型看你个人喜好!要么void creatlist(sqlist *l,elemtyp e[],int n),要么void creatlist(sqlist l,elemtyp e[],int n),当然,如果你的函数返回值是void,那么就必须用前者,即void ...