q=(llist)malloc(sizeof(lnode)); 这句是为指针q分配内存空间。
用完之后可以用free(p)释放内存空间。
一般小程序没用这句一般没事,但是最好分配一下内存空间。
希望能帮到你!
q=(llist)malloc(sizeof(lnode)); 这个不是约束,而是分配空间,你存储data这些东西,是需要空间的。
creat函数里面的变量t在creat函数执行完毕后就已经消失了,你虽然保留了指向它的指针,但是,指针指向的内存已经不存在t了,所以结果不是你想的那样。你可以在mian里面定义t,然后把指向t的指针作为参数传给creat函数,然后在creat函数里面给它的成员赋值
q=(llist)malloc(sizeof(lnode)); 语句是给程序分配存储空间的,不是约束条件!
就比如你要将什么东西放在盒子了,就应该先找到一个盒子然后再进去,没盒子的话你怎么放啊!
llist是一个指针类型,llist q; 只是声明了q是一个llist指针类型的变量,
这个指针没有初始化,也没有指向任何存储空间,所以必须要分配空间后再使用。