我需要在同一時間標記一個字符串的每個字符和它的索引號。但是當我輸入它時我想這樣做。對於輸入,我使用了一個循環並嘗試了cin >> str [i] //其中str是我的字符串。 但是最後還會有垃圾焦。 例如: 我輸入警察,但它來警察%或警察, 我用getchar()。 我該如何解決它? 如何通過字符輸入一個字符串?如何通過字符輸入一個字符串
我chceck此代碼,發現錯誤。
int n,m;
cin>>n>>m;
char str[n+1];
vector<int>v[125];
for(int i=0;i<n;i++){
cin>>str[i];
int ch=str[i];
v[ch].push_back(i);
}
getchar();
cout<<str<<endl;
顯示完整的代碼。 – Haris
你*做*記得要終止字符串? C風格的字符串全部由特殊字符''\ 0''終止。將數組視爲沒有終止符的字符串會導致*未定義行爲*。 –
是的,我必須記住字符串。 –