当前位置:   article > 正文

printf %s打印字符串 出现乱汉字问题解决_%s输出乱码

%s输出乱码

printf %s打印字符串 出现乱汉字问题解决

printf 基础定义

头文件:#include <stdio.h>

printf()函数是最常用的格式化输出函数,其原型为:
int printf( char * format, … );

printf()会根据参数 format 字符串来转换并格式化数据,然后将结果输出到标准输出设备(显示器),直到出现字符串结束(’\0’)为止。

参数 format 字符串可包含下列三种字符类型:
一般文本,将会直接输出
ASCII 控制字符,如\t、\n 等有特定含义
格式转换字符

乱码原因

因为%s表示a char*,而不是a std::string.
要想获得正确的输出:
1)使用s.c_str(),用c_str来获取与字符串内容等效的c-string
2)使用 iostreams:

实例

string s("abc");
printf("%s \n", s.c_str());
//or
std::cout<<s;
  • 1
  • 2
  • 3
  • 4
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/221970
推荐阅读
  

闽ICP备14008679号