【发布时间】:2010-09-21 09:09:43
【问题描述】:
我在 MS 书面步行采访中被问到这个问题:
在下面的程序中查找错误,该程序应该返回一个带有\n的新字符串。
char* AddnewlinetoString(char *s)
{
char buffer[1024];
strcpy(buffer,s);
buffer[strlen(s)-1] = '\n';
return buffer;
}
我尝试自己编写代码,并通过将缓冲区变量设为全局变量并使用buffer[strlen(s)] = '\n' 使其工作。但是不知道里面还有很多其他的bug。
【问题讨论】:
-
那么你看到了哪些?
-
该代码来自 windows 95 吗?
-
让我们看看Java学校的人回答这个:)
-
为什么这个问题已经结束了?它与编程非常相关。
-
有两种程序员——一种会仔细思考问题以查看所有相关细节,另一种会不断尝试直到看起来可行。猜猜你属于哪一组?猜猜微软在寻找哪种类型的产品?