不小心竟然自然自己写了个空指针
在练习写程序过程中写下了如下一段代码。
time_t time_t_time = time(NULL); tm *pTm = NULL; localtime_s(pTm, &time_t_time);
自己最初的理解是将指针pTm初始化为空指针,然后
localtime_s函数可以将
time_t_time 的值赋给指针
pTm
在运行过程中提示 Exception ptm!=NULL。
很显然
localtime_s的操作是将
time_t_time 的值存储的pTm的内存空间中,而不是让
pTm重新指向
time_t_time的内存地址。所以程序出错。
tm *pTm = new tm; localtime_s(pTm, &time_t_time);
或者
tm *pTm =NULL; tm tm1; pTm= &tm1; localtime_s(pTm, &time_t_time);
pTm有了内存空间就正确了。
posted on 2014-03-28 23:05 Leadtheway 阅读(338) 评论(0) 收藏 举报
浙公网安备 33010602011771号