Chinaunix首页 | 论坛 | 博客
  • 博客访问: 56363
  • 博文数量: 3
  • 博客积分: 1498
  • 博客等级: 上尉
  • 技术积分: 120
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-09 09:21
文章分类

全部博文(3)

文章存档

2011年(2)

2008年(1)

我的朋友

分类: C/C++

2008-09-25 11:16:27

c/c++的字符串格式化问题,常常会困扰人,只要做个集中整理,以便今后查看。

格式化值:
%% -返回百分号

%b –返回二进制数

%c –返回与ASCII值相对应的字符

%d –带有正负号的十进制数

%e –科学计数符号(如:1.2e+2)

%u –不带正负号的十进制数.%ul 不带符号的长整型

%f – 浮点数据(本地设置)

%F –浮点数据(非本地设置)

%o –八进制数

%s –字符串

%x –十六进制数(小写字母)
例如:sprintf(s, "%#010x", 128); //产生"0x00000080"
%X –十六进制数(大写字母)


对于数字,还有涉及对齐及宽度的问题:

它是位于%和字母之间的(如:%.2f)表示小数点后2位 例如:printf("%.2f",3.145) 输出3.14

在数字前加上+和-;默认情况下,只有负数是被标记出来的


左调整变量值m.n

浮点数:m表示小数点前的位数,n表示小数点后的位数,在m前可以添加不足位数的补位字符。

例如:pritnf("%2.3f",12.2);输出:12.30

例如:printf("%04d,1); 输出:0001

字符串:在"%m.ns"中,这 可以类比打印浮点数的"%m.nf",m 表示占用宽度(字符串长度不足时补空格,超出了则按照实际宽度打印),n 才表示从相应的字符串中最多取用的字符数。通常在打印字符串时m 没什么大用,还是点号后面的n 用的多。自然,也可以前后都只取部分字符.




阅读(5163) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:webfmt-我的开源项目发布

给主人留下些什么吧!~~