code block 与 vc的区别
程序有错误的,在create函数里,改正之后就可以在VC6里运行了
/*
创建链表,用头插法插入,倒序输出
*/
#include<stdio.h>
#include<stdlib.h>
struct?Node
{
char?data;
struct?Node?*next;
};
struct?Node*?create()
{
char?a;
struct?Node?*head,*p,*q;
head=(struct?Node*)malloc(sizeof(struct?Node));
q->next=NULL;?//这句q没有初始化,就引用了q的next,,应该为q=NULL;
=================================================================
但是错误的程序可以在code blocks里运行但是这样操作确实是有问题的
因为这是q的值是随机的,它指向了未知空间
========================================
其实vc和codeblocks是有区别的
vc在调试之前把未赋值的随机变量赋值为0xcccccccc