我尝试过使用while循环、isupper和.insert((I-1)、“”)。 我注意到,如果它是I+1,它会工作,但是这会给我错误的输出。
void fixedInput(string &userInput) { int i = 1; while (userInput[i]) { if (isupper(userInput[i])) { userInput.insert((i-1)," "); tolower(userInput[i]); } i++; } }
对于(i-1),没有输出
看一看 https://stackoverflow.com/a/14494432/11397643
使用这个概念,你应该能够附加一个空间,以及当做一个转换