首页 > 其他分享 >C语言自加问题与整形提升

C语言自加问题与整形提升

时间:2023-01-19 19:55:05浏览次数:44  
标签:运算 int 自加 C语言 ++ sizeof 整形

提问:

 

 

 在程序里,++a和+a在sizeof里,明显++a没有进行运算而+a进行运算并整形提升,这是为什么?

解答:

 这跟提升没有关系,这是运算优先级问题
++a,运算优先级最高,所以是先进行a的自加之后,执行sizeof(a),那么返回的依然是a自身的类型
而+a其实等同于0+a,0可以不写,这是个表达式,在运算中,所有变量会先转成最大的类型,而0是int型的常量,所以a会被转换成int型,相加的结果也是int型

标签:运算,int,自加,C语言,++,sizeof,整形
From: https://www.cnblogs.com/dituirenwu/p/17062060.html

相关文章

  • 如何使用C语言实现汉诺塔
    现有3个柱子A、B、C,有n个圆盘在A柱上,要实现n个圆盘要从A柱从大到小移动到C柱。思路:先将n-1个圆盘移动到B柱上,然后将最后一个圆盘移动到C柱上,最后将B柱上的n-1个圆盘移动到C......
  • c语言 打印数字金字塔
    提问: c语言。打印数字金字塔。for循环中为什么是j<i+1呢?以及如何判断这里的控制变量到底是与n有关还是与循环变量i有关呢?需要详细的解答 #include<stdio.h>voidpi......
  • c语言实现扫雷
    前言:上一篇博客我们写了三子棋小游戏,紧着这我们趁热打铁,继续巩固知识点,再来写一个更有意思的扫雷吧,想必扫雷大家都玩过,我就不做介绍了。概述:我们一样将代码分为三部分来写,主......
  • C语言运算符&优先级
    运算符优先级这一块即使你用了很久C语言,如果不刻意记忆,也是容易搞混的.C语言的运算符非常多,一共有50多种,可以分成若干类。算术运算符算术运算符专门用于算术......
  • C语言学院教学信息管理系统[2023-01-19]
    C语言学院教学信息管理系统[2023-01-19]30、某学院教学信息管理系统功能:1、每一条记录包括一位教师的职工号、姓名、职称、性别、3门主讲课程(课程名称、开课学期、课......
  • C语言核酸检测系统[2023-01-19]
    C语言核酸检测系统[2023-01-19]项目九:核酸检测系统1.教学内容实现一个简单的核酸检测系统,业务包括:将被检测人员的信息精准记录在系统中,并实时更据,实现精准监控并快速......
  • C语言中的整型数据类型(你真的了解吗)
    1.整型数据类型C语言里面的整数数据类型类型名称C语言中的关键字注释字符型char表示一个很小的整数短整型short表示一个不怎么大的整数整型int生活中一般的整数都可以表示......
  • 第一个C语言程序(从Hello World开始)
    程序员之间有一个约定俗成的习惯,我们在学习任何编程语言时,所写的第一个程序,就是在显示屏上打印一行字符​​“HelloWorld”​​。这个习惯出自哪里呢,首先回顾C语言的历史,就......
  • C语言基础--函数
    目录一、什么是函数二、函数的创建三、函数的使用四、返回值的使用五、什么是形参和实参六、默认值形参七、函数的递归一、什么是函数编程中的函数是将一些需要复用的代......
  • C语言基础--数组详细说明
    目录一.什么是数组二、一维数组1.一维数组创建2.一维数组的使用2.1索引值2.2遍历数组2.3如何使用sizeof()计算出数组的长度三、二维数组1.二维数组的创建2.二维数组的使......