#include<iostream> #include<string.h> using namespace std; int main() { char *pWord; char word[100],newWord[100]; int repeat,pCurrent; cin>>repeat; cin.ignore(); while(repeat--){ cin.getline(word,100); cin>>pCurrent; pWord=word+pCurrent;//移动位数 if(pCurrent>strlen(word)) cout<<"error input"; else { strncpy(newWord,pWord,strlen(word)-pCurrent/*去除前面的字符*/); cout<<newWord; } cin.ignore(); } return 0; }
我认为输入:
3
abc def
2
def abc
2
会输出
bc def
ef abc
但是在第二次输入 def abc时还没有输入2就直接再次输出了bc def
搞不懂是由于什么引发的
相关分类