论坛首页 招聘求职论坛

一个C语言的面试题

浏览 2605 次
精华帖 (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是在栈上的。

各位帮忙看看是不是这样的,谢谢。
   发表时间:2011-03-14  
栈溢出可能
0 请登录后投票
   发表时间:2011-03-14  
zeeeitch 写道
栈溢出可能

那答案B和C呢?
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics