首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

malloc 有关问题

2012-05-16 
malloc 问题//程序所出问题大概如下,还望大侠相救在开头定义了一个结构体如下:struct node{char *str}in

malloc 问题
//程序所出问题大概如下,还望大侠相救

在开头定义了一个结构体如下:
struct node
{
  char *str;
};

int get();

int main()
{
  struct node *new_node = (struct node *)malloc(sizeof(struct node));

  get();
   
  return 0;
}

int get()
{
  struct node *new_node = (struct node *)malloc(sizeof(struct node));
  return 0;
}


/////////////////////////////////
跟踪调试后发现
  在main函数内的new_node->str等于NULL;
  但在get函数内的new_node->str竟然不等于NULL,这是什么原因????


诚望大侠赐教!!!!

[解决办法]
在main函数内和在get函数内都是分配的内存但是没有初始化,char *str;的内容是未知的
[解决办法]
你没有调用memset
malloc只是负责分配了一块内存空间,至于这块内存空间是否被清干净了 是不确定的

热点排行