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

关于memset,该怎么处理

2012-02-25 
关于memset#includestdafx.h #includememory.h#includestdio.hint*pint_tmain(intargc,_TCHAR*argv

关于memset
#include   "stdafx.h "
#include   <memory.h>
#include   <stdio.h>
 
int   *p;

int   _tmain(int   argc,   _TCHAR*   argv[])
{    
     
        memset(p,0,sizeof(int));         此行出错
        return   0;
}

编译能通过,但运行时报告“该程序遇到问题需要关闭,我们对此引起的不便表示抱歉。”

问题在哪里?

[解决办法]
#include "stdafx.h "
#include <memory.h>
#include <stdio.h>

int p;

int _tmain(int argc, _TCHAR* argv[])
{

memset(&p,0,sizeof(int)); 此行出错
return 0;
}

原来当然会错p没有分配内容是野指针~
[解决办法]
你的p是一个全局变量,它指向哪里?全局变量如果不显式的初始化,是被初始化为0的,那么它就什么也不指。那memset去初始化哪个位置的内存呢?

热点排行