浏览 2605 次
锁定老帖子 主题:一个C语言的面试题
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-03-13
关于下面的C语言代码片段,那个是正确的? int test(char* src) { char dest[1024] = {0}; strncpy(dest, src, strlen(src)-1); return 1; } A. 这段代码没有任何问题 B. 这段代码存在条件竞争漏洞 C. 这段代码存在栈溢出漏洞 D. 这段代码存在堆溢出漏洞 我觉得是C,src超过1024的时候可能造成拷贝到dest时的溢出,而dest是在栈上的。 各位帮忙看看是不是这样的,谢谢。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-03-14
栈溢出可能
|
|
返回顶楼 | |
发表时间:2011-03-14
zeeeitch 写道 栈溢出可能
那答案B和C呢? |
|
返回顶楼 | |