博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
格式化输出中的%s和%S的陷阱
阅读量:4314 次
发布时间:2019-06-06

本文共 367 字,大约阅读时间需要 1 分钟。

CStringA csa;

CStringA csc;
CString csb(L"131231111111");
csa.Format("%s", csb);      // 只会输出1
csc.Format("%S", csb);      // 会输出131231111111

printf("%s\n", csa.GetBuffer(0));

printf("%s\n", csc.GetBuffer(0));

本意想输出131231111111,可是"%s"只会输出1,因为%s是按照ascill编码,而csb是unicode编码,unicode编码格式是一个"1"后会跟一个0x00,所以对于ascill来说,就认为字符串终止了.

 

转载于:https://www.cnblogs.com/aheadshooter/p/4454164.html

你可能感兴趣的文章
CSS3 transform制作的漂亮的滚动式导航
查看>>
《小强升职记——时间管理故事书》读书笔记
查看>>
Alpha 冲刺(3/10)
查看>>
Kaldi中的Chain模型
查看>>
spring中的ResourceBundleMessageSource使用和测试示例
查看>>
css规范 - bem
查看>>
SQL 通用数据类型
查看>>
UVALive 6145 Version Controlled IDE(可持久化treap、rope)
查看>>
mysql 将两个有主键的表合并到一起
查看>>
底部导航栏-----FragmentTabHost
查看>>
在linux中安装jdk以及tomcat并shell脚本关闭启动的进程
查看>>
apk,task,android:process与android:sharedUserId的区别
查看>>
MySQL 同主机不同数据库之间的复制
查看>>
iOS菜鸟开发 UIView,UIImageView 的点击事件
查看>>
取得GridView被隐藏列的值方法集合
查看>>
第七章例7-14
查看>>
SQL Server 维护计划实现数据库备份(Step by Step)
查看>>
VRPN 介绍及使用
查看>>
MyBatis使用懒加载mybatis-config.xml配置
查看>>
《C++ Primer》第五版课后习题解答_第六章(2)(08-15)
查看>>