讓說,我們必須找到一個字符串:C++使用字符串的一部分
string list[]= {"12.34.56.78","55.34.5","23.44.5"}
我希望用戶輸入這也是一個字符串,字符串的一部分:例如串55 ,它會循環通過串和查找整個字符串和打印"55.34.5"
我在做什麼是:
str
是一個字符串輸入和list
是字符串的整個列表
for (int i=0; i<n; i++){
for (int j=0; j<(list[i].length()); j++){
for (int k=0; k<(str.length()); k++){
if (list[i][j] == str[k])
cout<<list[i]<<endl;
else
break;
但是,這有一個問題,它不能正常工作。
更新:
,所以我已經更新了我的代碼:
for (int i=0; i<n; i++)
if (strncmp(list[i].c_str(), str.c_str(), str.length()) == 0)){
cout<<list[i]<<endl;
}
然而,這不輸出任何字符串。
想在更高層次上的find成員函數...你有一個[string類](http://www.cplusplus.com/reference/string/string/string/ )看看這個類的成員函數,看看是否能提供你所需要的。 – amdn
如果用戶輸入「34」會怎麼樣?你想讓前兩個字符串匹配(「12.34.56.78」和「55.34.5」)?換句話說,你在尋找用戶字符串是你的列表中的字符串的「substring」嗎? – amdn
輸出兩種選擇,然後 –