unsigned 赋值负数输出情况 & printf输出格式
%d 有符号10进制整数
%ld 长整型
%hd短整型
%i 有符号10进制整数
%o 无符号8进制整数
%u 无符号10进制整数
%x 无符号的16进制数字,并以小写abcdef表示
%X 无符号的16进制数字,并以大写ABCDEF表示
%F/f 浮点数 %E/e 用科学表示格式的浮点数
%g 使用%f和%e表示中的总的位数表示最短的来表示浮点数 G 同g格式,但表示为指数
%c 单个字符
%s 字符串 unsigned int a = -1;
unsigned short b = -1;
unsigned char c = -1;
printf("%u, %d, %d,\n",a,b,c);
输出:4294967295, 65535, 255, unsigned int a = -1;
unsigned short b = -1;
unsigned char c = -1;
printf("%d, %d, %d,\n",a,b,c);
输出:-1, 65535, 255,
a定义为unsigned 输出应该和上面的一样为4294967295啊
因为%d是按int输出,所以后面两个数的存储仍然是按照所存储二进制输出,没有涉及到int最高位的符号位 /*
us的二进制表示是0xffff,以4个字节的int类型输出时表示的是0x0000ffff,所以输出65535
un的二进制表示是0xffffffff,以4个字节的int类型输出时表示的是-1,所以输出-1
*/ unsigned int a = -1;
unsigned short b = -1;
unsigned char c = -1;
printf("%d, %hd, %d,\n",a,b,c);
输出:-1, -1, 255, 啊,各种地方都需要注意啊 如果使用cout来输出: cout<< a<<endl;
cout<< b<<endl;
cout<< c<<endl;
输出:4294967295, 65535,
c我如果为-1没有输出,如果是0-255之间为对应的ascii码
cout<<us<<endl; // -1在无符号的short数据中是65535
cout<<un<<endl; // -1在无符号的int数据中是4294967295
unsigned 赋值负数输出情况 & printf输出格式的更多相关文章
- printf输出格式
tips:#为空格 Printf 格式化字符串 格式代码 A ABC ABCDEFGH %S A ABC ABCDEFGH %5S ...
- printf输出格式介绍(转)
格式代码 A ABC ABCDEFGH %S A ABC ABCDEFGH %5S ####A ##ABC ABCDEFGH %.5S A ABC ABCDE %5.5S ####A ##ABC AB ...
- c语言printf()输出格式大全(转载)
1.转换说明符 %a(%A) 浮点数.十六进制数字和p-(P-)记数法(C99) %c 字符 %d 有符号十进制整 ...
- printf 输出格式
printf 输出格式C中格式字符串的一般形式为: %[标志][输出最小宽度][.精度][长度]类型,其中方括号[]中的项为可选项.各项的意义介绍如下:1.类型类型字符用以表示输出数据的类型,其格式符 ...
- C语言的printf输出格式控制
C语言的printf输出格式控制 printf大家都耳熟能详,但是能真正将其用法弄透的估计很少见. 转一篇,改天整理. 1.转换说明符 %a(%A) 浮点数.十六进制数字和p-(P-)记数法( ...
- C++实现两个大整数的相加(考虑到负数异常情况)
实现两个大整数的相加,首先应该排除直接使用int和long long的方法,这些方法很容易溢出,这里为了方便(是否可以使用更精简的结构存储?)采用char来存储整数,整体思路如下: 1. 对于整数n和 ...
- 九天学会Java,第一天,变量和数据类型,赋值和输出
用9天入门三门编程语言,有可能嘛,尤其是对没有基础的同学来说?对于想学好的编程的人来说,无论从哪一门语言开始入手,语言的本身其实并不是我们最应该的关心的,至少不是作为一个初学者首先关心的. 网络上,网 ...
- Golang的格式化输出fmt.Printf
本文来源:Go by example. Golang的格式化输出 和 C语言的标准输出基本一样,但是增加了一些针对Golang语言的特有数据结构的格式化输出方式. 一下就是实例: package ma ...
- usart下位机输出使用printf的格式化技巧
输出使用printf("0x%3X ", I2c_Buf_Write[i]);时,上位机接收过程,使用文本格式,显示结果如下 虽然是保留了三位的宽度,但是并不美观. 相比于使用pr ...
随机推荐
- swift中tableview的使用和注意事项
今天使用swift写了个简单的tableView,语法和用法上跟oc没多大的区别.但是还是有一些细节的地方需要注意一下的. 先上代码 import UIKit class ViewController ...
- acm相关(纯转载)
我觉得很好的文章,之所以放随笔是为了让大家看到这些优秀的博文 acm如何起步 acm重点题型 动态规划题目总结 背包九讲阅读网站
- 最高的奖励 - 优先队列&贪心 / 并查集
题目地址:http://www.51cpc.com/web/problem.php?id=1587 Summarize: 优先队列&贪心: 1. 按价值最高排序,价值相同则按完成时间越晚为先: ...
- Mysql Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode
今天用mysql workbench在更新数据的时候,出现了下面错误:15:52:39 update wp_posts set post_content = replace(post_conte ...
- PAT 1131 Subway Map
In the big cities, the subway systems always look so complex to the visitors. To give you some sense ...
- 【03】AngularJS 简介
AngularJS 简介 AngularJS 是一个 JavaScript 框架.它可通过 <script> 标签添加到 HTML 页面. AngularJS 通过 指令 扩展了 HTML ...
- The Balance POJ 2142 扩展欧几里得
Description Ms. Iyo Kiffa-Australis has a balance and only two kinds of weights to measure a dose of ...
- Portal嵌入SAPUI5应用程序
Embedding SAPUI5 Applications You can embed SAPUI5 applications directly into the SAP Fiori launchpa ...
- Mcrouter-基于Memcached协议的缓存层流量管理工具(Memcached集群的另一个选择)(转)
Mcrouter 是一个基于Memcached协议的路由器,它是 Facebook缓存架构的核心组件,在峰值的时候,它能够处理每秒50亿次的请求.近日,Facebook开放了Mcrouter的源代码, ...
- Eclipse修改默认包路径的起始文件夹
一般新建的Java Project项目都是从src文件夹开始的,那么通过下面的操作可以自定义修改起始文件夹. 1.项目右键->[Properties] 如果不能修改时,可以直接删除后再添加回来.