我正在编写一个逐行读取文件的编译器,然后在行中检查命令(例如D=AM
),拆分成子串并找出每个命令的内容。
我应该使用str.compare()
还是可以使用下面的if
语句?
tempString = line.find("=", line.length());
if(tempString == "AM"){return 65526;}
答案 0 :(得分:3)
除了使用==
将返回bool之外,两者之间似乎没有太大区别,而使用str.compare()
将返回一个int(如果为true则特别为0,所以你需要像if(str.compare(str2) == 0)
)一样使用它。您可以在http://www.cplusplus.com/reference/string/string/compare/找到有关比较功能的更多信息。