格式化输入输出处理16进制的问题
来源:互联网 发布:手机qq监视器软件 编辑:程序博客网 时间:2024/06/06 04:56
编程学习,代码现行。所以先来分析一段代码:
#include<stdio.h>long long a,b;int main(){ while(scanf("%llx%llx",&a,&b)!=EOF) { printf(a+b<0?"-%llX\n":"%llX\n",a+b<0?-a-b:a+b); } return 0;}
这个代码精巧在哪里呢?首先是直接输入16进制的数字运送到两个变量地址之下,然后进行运算,最后再大写输出。可以看到的是,再格式化输出时,用到了%ll**X**的写法;
其次是在printf时进行判断,用到了三目运算符(?:),巧妙地避免了多次判断输出,使代码更加简洁。
第三是64位整型在转换为16进制输出时,是按照补码进行转换直接输出,因此如果结果为负数,应该先取相反数,然后再用%X的方法进行输出。
0 0
- 格式化输入输出处理16进制的问题
- 输入输出的进制问题
- C的格式化输入输出
- c语言的格式化输入输出
- 简单的格式化输入输出练习
- 格式化输入输出
- 格式化输入输出
- 格式化输入输出
- 格式化输入输出
- 格式化输入输出
- 格式化输入输出
- 格式化输入输出
- 字符串的输入输出处理
- subprocess的输入输出处理
- python输入输出的处理
- 格式化输入输出浮点数据的细微问题(C标准:printf,scanf)
- java 输入输出 格式化 本地文件的读取
- 关于字符串和格式化输入输出的学习
- 写python使用IDLE如何实现调试功能
- 刷新验证码
- java开发规范(转载)
- 如何写Java文档注释(Java Doc Comments)
- 【PAT】1056. Mice and Rice
- 格式化输入输出处理16进制的问题
- Weekly Conclusion : Linux
- PCA的数学原理(非常值得阅读)!!!!
- Linux Data Structure
- unknown的实现遇到问题了
- java堆栈学习
- 记又一家游戏公司面试
- 详细聊聊Javadoc注释规范
- Java06集合