题解 | #参数解析#

参数解析

https://www.nowcoder.com/practice/668603dc307e4ef4bb07bcd0615ea677

#include <iostream>
#include <vector>
using namespace std;
int main(){
    string str;
    getline(cin,str);
    vector<string> cmds;
    string s="";
    int n = str.size();
    for(int i=0;i<n;){
        if(str[i]=='"'){
            i++;
            for(;str[i]!='"';i++){
                s+=str[i];
            }
            i++;
            cmds.push_back(s);
            s.clear();
        }else if(str[i]==' '){
            if(s.size()>0){
                cmds.push_back(s);
            }
            //cmds.push_back(s);
            i++;
            s.clear();
        }else{
            s+=str[i];
            i++;
        }
    }
    if(s.size()>0){
        cmds.push_back(s);
    }
    std::cout << cmds.size() <<  std::endl;
    for(auto s:cmds){
        std::cout << s << std::endl;
    }

    return 0;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-01 12:22
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务