C++ printf末尾不需要的字符
我已经编写了一个小程序,它接受字符串输入,并输出字符串,每个字符数上移3。唯一的问题是在每个字符串的末尾打印一个C++ printf末尾不需要的字符,c++,string,printf,C++,String,Printf,我已经编写了一个小程序,它接受字符串输入,并输出字符串,每个字符数上移3。唯一的问题是在每个字符串的末尾打印一个%字符 #include <iostream> #include <stdio.h> #include <string> int main() { std::cout << "Input message: " << std::endl; std::string mes; std::cin >&g
%
字符
#include <iostream>
#include <stdio.h>
#include <string>
int main()
{
std::cout << "Input message: " << std::endl;
std::string mes;
std::cin >> mes;
for(char& c : mes)
{
printf ("%c", c+3);
}
}
您看到的是程序结束后shell中的提示,因为您没有打印换行符 加入一个
printf(“\n”)代码>就在main
退出之前,您将得到想要的结果
通过添加换行符演示工作代码:您看到的是程序结束后shell中的提示,因为您没有打印换行符
加入一个printf(“\n”)代码>就在main
退出之前,您将得到想要的结果
通过在同一程序中添加换行符来演示工作代码:std::cout和printf?好吧,为什么not@krzaq很好的发现。std::cout和printf在同一个程序中?好吧,为什么not@krzaq很好的发现。
Input message:
hi
kl%