CCF模板生成工具

    xiaoxiao2021-03-25  71

    #include<iostream> #include<stdio.h> #include<map> #include<algorithm> #include<String> using namespace std; int main() {     int tvarNum,cvarNum;//文本行数tvarNum,对应的变量行数cvarNum     cin>>tvarNum>>cvarNum;//输入变量     string input,output,temp;     map<string,string> varDict;     getchar();//除去回车键符     for(int i=0;i<tvarNum;i++)//将文本中各行输入     {         getline(cin,temp);//输入一行         input+=temp+'\n';//换行     }     string key,value;     for(int i=0;i<cvarNum;i++)     {         cin>>key;         getline(cin,temp);         int startQ=temp.find("\"");         int endQ=temp.rfind("\"");         cout<<startQ<<endQ<<endl;         value=temp.substr(startQ+1,endQ-startQ-1);         varDict[key]=value;     }     int startPos, endPos; // startPos->{{ endPos->}}     int startPoint = 0; // start position for string.find     int ss=2;     while(ss) {       startPos = input.find("{{", startPoint);       endPos = input.find("}}", startPos);       if(startPos<0||endPos<0) break;       key=input.substr(startPos+2,endPos-startPos-4);       value="";       if(varDict.find(key)!=varDict.end()) value=varDict[key];       output+=input.substr(startPoint,startPos-startPoint)+value;       startPoint=endPos+2;     }     ouput+=input.substr(startPoint,input.size());     return 0; }
    转载请注明原文地址: https://ju.6miu.com/read-32602.html

    最新回复(0)