【发布时间】:2016-09-20 16:05:12
【问题描述】:
在一个测试文档中,我发现有人问我以下代码中的问题是什么:
#include <iostream>
#include <stdlib.h>
#include <string.h>
using namespace std;
int main()
{
char* a = (char*) malloc (20);
char* b = (char*) malloc (20);
strcpy(b, "Secure Coding");
strcpy(a, "Insecure Coding");
a = b;
cout << a << endl;
cout << b << endl << endl;
free(a);
free(b);
return 0;
}
这是什么?
【问题讨论】:
-
好吧,你怎么看?您是否分析过代码及其作用?
-
另外,如果您发布正在编译 代码会有所帮助,因为现在代码的问题在于它无法编译。然而,这与安全或“安全代码”无关。
-
另外,你为什么用 C# 标记这个问题?那不是 C# 代码,那是 C 或 C++ 代码。
-
这是C#代码?我一定是做错了……
-
标签错误,请修正。
标签: c++ security memory-leaks