这个不叫重复定义,这是为p1动态分配内存空间,这样把不连续的内存空间连接起来构成链表
动态创建一个结点,p1是一个不断变换的节点,因为每一次分配一个,它的指针域都会有新的值啦!不是第二次定义,是创建新节点
不是重复定义。。。原来的那个p1 已经用掉了。。。你所谓的第二个定义 其实 已经开辟了别的地址空间。。。
有必要啊,while里面的malloc是重新建立一个节点啊,第一个malloc只是建立了一个;ps:你这里malloc(LEN)和malloc(1)的效果是一样的;