尝试从文件缓冲区到char数组的strcpy时发生读取访问冲突

时间:2018-11-13 13:39:14

标签: c++ arrays file char strcpy

我一直在致力于实现散列的任务。在其中,我通读了一个称为“蛋白质”的文本文件。当我尝试将其复制到另一个char数组时,会出现问题。 Visual Studio引发读取访问冲突。

CMakeLists.txt

1 个答案:

答案 0 :(得分:2)

如果您在此处获得的字符超过30个:

while (fin >> buffer) {

...或此处索引> = 40:

strcpy(proteins[index].protein, buffer);

...该程序可能会崩溃(未定义行为)。另外,这些char*不会指向相同的地址,因此比较将失败:

proteins[index].protein == buffer