gpt4 book ai didi

c++ - 在 strtok 之后比较字符串

转载 作者:太空宇宙 更新时间:2023-11-04 16:27:07 26 4
gpt4 key购买 nike

我想在 strtok 之后比较字符串,但我似乎得到了 false 而不是 true

如果我正在使用 strtok,我还需要做什么吗?

char file[] = "temp.txt";
ifstream getfile;
getfile.open(file,ios::in);
if(getfile.is_open())
{
char data[256];
char *line;
const char * test = "init";

//loop till end of file
while(!getfile.eof())
{
//get data and store to variable data
getfile.getline(data,256,'\n');

line = strtok(data," ");
while(line != NULL)
{
cout << "Comparing " << line << " with " << test <<endl;
//This is suppose to print but it dosent
if(line == test)
cout << line << endl;

line = strtok(NULL," ");
}

}
}

输出:

 comparing init with init

想要的输出:

 comparing init with init
init

谢谢! :D

===========================

更改为以下内容并且有效! :)

if(strcmp(line,test)==0)

最佳答案

你在比较指针而不是内容。查看 strcmp 或将 C 字符串包装在 std::string 中。

关于c++ - 在 strtok 之后比较字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10609051/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com