数组初始化错误LNK2001:未解析的外部符号_memset

时间:2017-06-08 05:21:24

标签: c visual-c++

编译器:VC2013

我有一个数组如下:

typedef char CHAR8;
CHAR8 buffer[HEX_DUMP_BUFFER_LENGTH];

使用以下代码,我得到error LNK2001: unresolved external symbol _memset

for (i = 0; i < HEX_DUMP_BUFFER_LENGTH; i++){
    buffer[i] = 'a';
}

但是通过手动分配到数组元素,没有链接错误。

buffer[0] = 'a';

为什么?

1 个答案:

答案 0 :(得分:-2)

出于某些性能原因,编译器将优化您的代码。 您可以反汇编二进制文件以查明编译器是否已完成此操作。 您可以调整编译标志,优化级别,或链接lib以获取_memset的符号。