#include <string.h>
sdi12CRC::sdi12CRC()
{
CRC = 0;
responseToDCommandWithoutCRC = new char[MAX_D_COMMAND_RESPONSE_SIZE];
responseToDCommandWithCRC = new char[MAX_D_COMMAND_RESPONSE_SIZE];
asciiCRC = new char[ASCII_CRC_SIZE];
strcpy(responseToDCommandWithoutCRC,"");
strcpy(responseToDCommandWithCRC,"");
strcpy(asciiCRC,"");
}
上面是我使用Borland C ++ builder编写和测试的C ++程序的代码片段。有用。我现在正在学习Visual Studio 2010,所以我想我用过去的工作来帮助学习Visual Studio。
我在上面的代码中收到警告和错误,但上面的代码是合法的C ++代码。我在VS文档中找不到任何帮助来了解我做错了什么以及如何解决它。 (我不是说它不在文档中;只是说我找不到它。)
Warning 1 warning C4627: '#include <stdlib.h>': skipped when looking for precompiled header use
Error 4 error C3861: 'strcpy': identifier not found
这里给出了什么? string.h不是strcpy所需的标头吗?因此strcpy()应该编译。我不明白或不知道的是什么?
非常感谢任何帮助。
答案 0 :(得分:3)
问题是您将项目配置为使用预编译的标头,但您没有使用它们。只需调整项目设置即可使用预编译的标题。
答案 1 :(得分:1)
尝试明确添加#include <stdlib.h>
,然后添加#include <string.h>