在c++中查找字符串

Finding String on C++

本文关键字:字符串 查找 c++      更新时间:2023-10-16

老师给我布置了一个任务。我尝试了一些代码,但它让我很困惑。下面是我的代码:

#include <iostream>
using namespace std;
char inputChecker [1000];
string source = "10110111000111001101110";
string detected;
int main(){
    cout <<"Input:";
    cin >> inputChecker;
    for (int i=0;i<source.size();i++){
        if (source[i]==inputChecker[0]){
            cout <<"Data " <<inputChecker <<"is exist" <<endl; 
        }
        else if (source[i]==inputChecker[i]){
            cout <<"Data " <<inputChecker <<" isn't exist'" <<endl;
        }
    }
}

所以,我的期望输出是,当我输入10,它将导致"数据10是存在的"。没有循环。我认为它需要两种循环,但我不知道在哪里循环。

我的期望输出:

Input : 10
Data 10 is exist
Input : 25
Data 25 isn't exist

提前感谢:))

无需循环

#include <iostream>
using namespace std;
int main() {
    string source = "10110111000111001101110";
    string input;
    cin >> input;
    if (source.find(input) != string::npos)
        cout << input << " existsn";
    else
        cout << input <<" doesn't existn";
}

看看其他有用的std::string方法,如find_first_of, find_last_of