Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3624414
  • 博文数量: 880
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 6155
  • 用 户 组: 普通用户
  • 注册时间: 2016-11-11 09:12
个人简介

To be a better coder

文章分类

全部博文(880)

文章存档

2022年(5)

2021年(60)

2020年(175)

2019年(207)

2018年(210)

2017年(142)

2016年(81)

分类: LINUX

2019-03-20 11:19:41

  (1) printf(%d,sizeof(A))//输出4

分析:sizeof()是一个表达式,字符Achar类型提升到int,所以打印出是4int的大小),而不是1char的大小)。

  (2)char a,b;

printf ( " the size of the result of a+b :%d " ,sizeof( a+b) );  //输出4

  (3)char a;

printf ( "%d\n" ,sizeof(a)); //输出1
(4)char a = -1;

    unsigned char b = 1;

printf("%d", a > b);//输出0
(5)
int a = -1;

    unsigned int b = 1;

printf("%d", a > b);//输出1


(6)
char a= -1;

    unsigned int b = -1;

printf("%d\n",a==b);//输出1

(7) char a = -1;

   unsigned char b = 1;

   printf("%d", a > b);//输出0

分析:整形提升,参看上一节分析。

(8) int a = -1;

   unsigned char b = -1;

   printf("%d\n", a < b);//输出是1

分析:类型提升,b扩展为0x000000FF,解释为int255当然大于-1


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

上一篇:云计算

下一篇:lsblk 与df -h与df -T

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