char *local_buffer, *buff;
fgets(buff, 1024, fp);
local_buffer=strtok(buff,'\t'); //Error is coming with this line
我已经尝试使用字符变量代替 '\t',但仍显示相同的错误。
char *local_buffer, *buff;
fgets(buff, 1024, fp);
local_buffer=strtok(buff,'\t'); //Error is coming with this line
我已经尝试使用字符变量代替 '\t',但仍显示相同的错误。
您传递的是单个字符常量(等同于整数),而不是字符串,作为第二个参数。
local_buffer=strtok(buff,'\t');
local_buffer=strtok(buff,"\t");
'\t'
不是指定 ASCII 的。任何其他符合 C 标准的编码字符都可以使用。当然,ASCII 是最常见的。 - chux - Reinstate Monica尝试:
char *local_buffer, buff[1024];
fgets(buff, 1024, fp);
local_buffer=strtok(buff,"\t"); //Error is coming with this line
说明:
双引号("")表示以null结尾的C风格字符字符串(char*
)
单引号('')表示字符(显然是int
类型)
char buff[1024]
替代 char *buff
。 - chux - Reinstate Monica
strtok(buff, "\t")
吗?请特别注意双引号而不是单引号。 - George Mitchell