C中struct(结构体)初始化的问题
2017-09-05 12:33
260 查看
在leetcode上做一道用struct作为链表节点的题目时,遇到了一次runtime
error。后来排查原因,发现是在一次写了如下的语句:
new_digit->next=(struct ListNode *)malloc(sizeof(struct
ListNode));
new_digit=new_digit->next;
之后,没有对这个指针的成员进行初始化,当加入下面的初始化语句:
new_digit->next=NULL;
new_digit->val=0;
就直接AC了。
这个问题比较难排查,当用testcase,也就是自己用样例来测试的时候,就不会出现这样的错误,可以得到正确答案。这个问题在leetcode官方的QA上也提到过,说是因为系统的原因,导致有些错误没法通过自行run
code解决.......
所以总的来说,还是得自己养成好的编程习惯,特别是对于指针,一定要初始化,至少要赋一个NULL值
error。后来排查原因,发现是在一次写了如下的语句:
new_digit->next=(struct ListNode *)malloc(sizeof(struct
ListNode));
new_digit=new_digit->next;
之后,没有对这个指针的成员进行初始化,当加入下面的初始化语句:
new_digit->next=NULL;
new_digit->val=0;
就直接AC了。
这个问题比较难排查,当用testcase,也就是自己用样例来测试的时候,就不会出现这样的错误,可以得到正确答案。这个问题在leetcode官方的QA上也提到过,说是因为系统的原因,导致有些错误没法通过自行run
code解决.......
所以总的来说,还是得自己养成好的编程习惯,特别是对于指针,一定要初始化,至少要赋一个NULL值
相关文章推荐
- struct 结构体的定义及初始化问题
- Cstring使用问题和struct结构体初始化方法汇总
- Cstring使用问题和struct结构体初始化方法汇总
- 结构体struct字对齐问题
- C语言中结构体(struct)的几种初始化方法
- 关于结构体数组初始化的问题--深入举例
- struct结构体初始化
- 全局结构体变量和局部变量系统如何初始化问题
- 结构体struct字对齐问题
- C语言结构体(struct)常见使用方法(细节问题)
- 结构体struct的自然对齐问题(经典)
- 结构体的初始化问题
- 关于struct 变量初始化和赋值的问题(vs 环境)
- 一个结构体初始化问题
- 全局结构体变量的初始化以及将结构体变量转换为char类型输出问题
- linux C 结构体struct的定义和初始化
- 关于结构体struct的sizeof计算问题
- C语言中结构体(struct)的初始化
- 谈结构体struct 初始化多出的点号“.”,数组[]初始化多出的逗号“,”
- struct结构体的初始化及typedef的理解总结