所以,我的问题很简单,我想创建一个函数来分隔文件中的单词并解析这些单词并为这些单词创建一个特殊的想法,但是,当我尝试分离标记时,strcat 出现错误:
看代码:
#include <stdio.h>
#include <string>
#include <Windows.h>
using namespace std;
bool compile(FILE *fp)
{
char c;
char token[256];
bool _return = false;
while ((c = getc(fp)) != EOF)
{
if(isalpha(c))
{
// The error is here
strcat(token, (char*)c);
printf("%c\n", c);
}
else
{
printf("----> %c\n", c);
}
}
printf("%s\n", token);
return _return;
}
int main()
{
char *filename = "test.in";
FILE *fp = fopen(filename, "rb");
if(!fp)
{
return 1;
}
if(!compile(fp))
{
printf("ERROR...\n");
}
fclose(fp);
}
代码可以正常构建,但是,当我调试时,调试器会转到 strcat.asm 文件 :( 那么,我的错误在哪里,感谢您的帮助。(:
-0-0-0-0-0-0-0-0-0-> 编辑并且,当我将 strcat 更改为:
strcat(token, &c)
我从调试器收到此错误:
APP.exe 中 0x20E801F2 处的未处理异常:0xC0000005:访问冲突(参数:0x00000008)。