1
canautumn 2014-11-26 01:47:37 +08:00
ListInsert后边是传值传递,不是引用传递。L被复制了一份传进函数了。所以地址不同,而且不会修改主函数里的L。
|
2
canautumn 2014-11-26 01:53:40 +08:00 1
又看了一眼。L复制了一份,所以L本身的地址变了,但是data和length的指针位置直接被复制,是不变的,所以data的值改了。但是L.length++是指针自增1,不是值自增1。应该是*(L.length)++,不过建议一个int不要用指针了。
|
3
bbvps 2014-11-26 04:25:41 +08:00
int ListInsert (SeqList L, int i, int e)--> int ListInsert (SeqList *L, int i, int e) 并修改这个函数的内部,则能够达到你想要的结果。
|
4
pljhonglu 2014-11-26 08:54:07 +08:00
ListInsert应该传引用值,要搞清楚值传递与引用传递的区别。
|