如何在字符串中找到字符“\”?

时间:2016-05-19 05:27:50

标签: c++ string

我试图通过在字符串Find \ inHere中找到\字符来操纵字符串。但是,我不能把它作为test.find('\', 0)中的输入。它不起作用,并给我错误“缺少终止字符。”有没有办法解决test.find('\', 0)

string test = "Find\inHere";

int x = test.find('\', 0);   // error on this line
cout << x;   // x should equal 4

1 个答案:

答案 0 :(得分:3)

\是用于引入特殊字符的字符,例如\n换行符,\xDB显示带有十六进制数字DB等的ASCII字符。

因此,为了搜索这个特殊字符,你必须通过添加另一个\来逃避它,使用:

test.find("\\",0);

编辑:另外,在你的第一个字符串中,它没有写入“Find \ inHere”但是“Find”并且错误,因为\inHere不是特殊指令。所以,同样的方法来避免它,写下“Find \\ inHere”。