所以我有一個字符輸入字符串。如果字符串包含空格或長度小於15個字符,我必須用空格替換下劃線(「_」)。如何用「_」替換「」?
這是我的代碼:
#include <string>
#include <iostream>
using namespace std;
string spaces(int i){
char arr[i];
for(int j=0; j<i; j++){
arr[j]='_';
}
string space(arr);
return space;
}
int main(){
string str = "USERNAME12034";
if(str.size() < 15){
// get size of username;
int size = 15-str.size();
str = str.append(spaces(size));
}
cout << str << endl;
return 0;
}
當我編譯並運行它,這是輸出:
USERNAME12034__�O�
我如何才能在年底擺脫那些字符?
使用'的std :: replace'。 – chris
問題措辭嚴重:描述中提到「填充到15個字符」,但標題是「用下劃線替換空格」。 – Mark
謝謝克里斯,我不知道有一個替換函數我可以使用,以便照顧替換空的空間。但是,如果用戶名長度小於15個字符,如何追加一定數量的空白空間? – Dreadlock