免费注册 查看新帖 |

Chinaunix

广告
  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4307 | 回复: 4
打印 上一主题 下一主题

awk printf("%u "$i) 无法输出无符号数 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-07-04 10:35 |只看该作者 |倒序浏览
本帖最后由 kangle000 于 2010-07-04 12:13 编辑

有一个err文件,内容如下:
  1. cat err
复制代码
3688491493 17 1993021096 16 1993024086 22 3688491493 19 3688491493 24 3688495713 23 3688495713 13 1993031492 32 1993023639 12 1993022372 36 1993022372 51 3396790118 17 1993031486 20 1993031486 42 3396790118 39 1993031486 16 1993021919 24 但是用printf打印出来之后符号位的1丢失了。比如红色标记的地方
  1. $ awk '{i = 1; while(i++ < NF) {printf("%u ", $i)}}' err
复制代码
2147483647 17 1993021096 16 1993024086 22 2147483647 19 2147483647 24 2147483647 23 2147483647 13 1993031492 32 1993023639 12 1993022372 36 1993022372 51 2147483647 17 1993031486 20 1993031486 42 2147483647 39 1993031486 16 1993021919 24

论坛徽章:
0
2 [报告]
发表于 2010-07-04 13:04 |只看该作者
没看懂
awk '{i = 1; while(i++ < NF) {printf"%u ", $i}}' err

论坛徽章:
0
3 [报告]
发表于 2010-07-04 21:38 |只看该作者
回复 2# lkk2003rty


    只是把这一行的所有数字遍历一遍,按无符号数输出

论坛徽章:
0
4 [报告]
发表于 2010-07-05 13:21 |只看该作者
回复 3# kangle000


    原来的不就是无符号的么?

论坛徽章:
0
5 [报告]
发表于 2010-07-06 15:16 |只看该作者
本帖最后由 kangle000 于 2010-07-06 21:26 编辑

回复 4# lkk2003rty


    原来是无符号数,但是按%u输出之后却不是无符号数。如文中红色标记的部分3688495713按那个输出之后变成了2147483647
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP