当前位置: 首页 > news >正文

如何查看网站的关键词常州网站建设公司报价

如何查看网站的关键词,常州网站建设公司报价,怎样创建网站详细步骤,网站模版整站下载【C语言】你不知道的隐式类型转换规则 一、隐式类型转换的规则二、整型提升1.整型提升的意义2.如何进行整体提升#xff1f;2.1正数的整形提升2.2负数的整型提升2.3无符号整型提升 3.整型提升实例 三、算术转换 #x1f388;个人主页#xff1a;库库的里昂#x1f390;CSDN… 【C语言】你不知道的隐式类型转换规则 一、隐式类型转换的规则二、整型提升1.整型提升的意义2.如何进行整体提升2.1正数的整形提升2.2负数的整型提升2.3无符号整型提升 3.整型提升实例 三、算术转换 个人主页库库的里昂CSDN新晋作者欢迎 点赞✍评论⭐收藏✨系列专栏C语言初阶、代码小游戏希望作者的文章能对你有所帮助有不足的地方请在评论区留言指正大家一起学习交流 【前言】 本文接着C语言中的操作符万字详解讲解隐式类型转换规则还有没学操作符的老铁可以回头看看。在 C 语言中类型转换的方式一般可分为隐式类型转换和显示类型转换也称为强制类型转换。其中隐式类型转换由编译器自动进行不需要程序员干预。隐式类型转换通常有两种情况整形提升和算术转换。 一、隐式类型转换的规则 在C语言中自动类型转换遵循以下规则 若参与运算量的类型不同则先转换成同一类型然后进行运算。转换按数据长度增加的方向进行以保证精度不降低。如int型和long型运算时先把int量转成long型后再进行运算。 a、若两种类型的字节数不同转换成字节数高的类型 b、若两种类型的字节数相同且一种有符号一种无符号则转换成无符号类型所有的浮点运算都是以双精度进行的即使仅含float单精度量运算的表达式也要先转换成double型再作运算。char型和short型参与运算时必须先转换成int型。在赋值运算中赋值号两边量的数据类型不同时赋值号右边量的类型将转换为左边量的类型。如果右边量的数据类型长度比左边长时将丢失一部分数据这样会降低精度丢失的部分按四舍五入向前舍入。 二、整型提升 C的整型算术运算总是至少以缺省整型类型的精度来进行的。 为了获得这个精度表达式中的字符和短整型操作数在使用之前被转换为普通整型这种转换称为整型提升。 1.整型提升的意义 表达式的整型运算要在CPU的相应运算器件内执行CPU内整型运算器(ALU)的操作数的字节长度。 一般就是int的字节长度同时也是CPU的通用寄存器的长度。 因此即使两个char类型的相加在CPU执行时实际上也要先转换为CPU内整型操作数的标准长度。 通用CPUgeneral-purpose CPU是难以直接实现两个8比特字节直接相加运算虽然机器指令中可能有这种字节相加指令。所以表达式中各种长度可能小于int长度的整型值都必须先转换为int或unsigned int然后才能送入CPU去执行运算。 代码示例 char a,b,c; a b c;b和c的值被提升为普通整型然后再执行加法运算。 加法运算完成之后结果将被截断然后再存储于a中。 2.如何进行整体提升 整形提升是按照变量的数据类型的符号位来提升的 2.1正数的整形提升 高位补充符号位即补0 char c2 1; 变量c2的二进制位(补码)中只有8个比特位 00000001 因为 char 为有符号的 char //VS中默认char为有符号char 所以整形提升的时候高位补充符号位即为0 提升之后的结果是 000000000000000000000000000000012.2负数的整型提升 高位补充符号位即补1 char c1 -1; 变量c1的二进制位(补码)中只有8个比特位 1111111 因为 char 为有符号的 char 所以整形提升的时候高位补充符号位即为1 提升之后的结果是 111111111111111111111111111111112.3无符号整型提升 高位补0 3.整型提升实例 代码示例1 #includestdio.h int main() {char a 0xb6;short b 0xb600;int c 0xb6000000;if (a 0xb6)printf(a);if (b 0xb600)printf(b);if (c 0xb6000000)printf(c);return 0; }代码结果 c结果分析 实例1中的a,b要进行整形提升,但是c不需要整形提升 a,b整形提升之后,变成了负数,所以表达式 a0xb6 b0xb600的结果是假,但是c不发生整形提升,则表达式 c0xb6000000 的结果是真. 代码示例2 #includestdio.h int main() {char c 1;printf(c%u\n, sizeof(c));//%u按无符号整形unsigned int打印printf(c%u\n, sizeof(c));printf(c%u\n, sizeof(-c));return 0; }c1 c4 c4实例2中的,c只要参与表达式运算,就会发生整形提升,表达式 c ,就会发生提升,所以 sizeof(c) 是4个字节。 表达式 -c 也会发生整形提升,所以 sizeof(-c) 是4个字节,但是 sizeof© ,就是1个字节。 三、算术转换 如果某个操作符的各个操作数属于不同的类型那么除非其中一个操作数的转换为另一个操作数的类型否则操作就无法进行。下面的层次体系称为寻常算术转换。 //排名由高到低 long double double float unsigned long int long int unsigned int int如果某个操作数的类型在上面这个列表中排名较低那么首先要转换为另外一个操作数的类型后执行运算。 警告 但是算术转换要合理要不然会有一些潜在的问题。 代码示例 #includestdio.h int main() {float f 3.14;int num f;//隐式转换会有精度丢失printf(num%d,num); }代码结果 num3结果分析 在赋值运算过程中当两边的数据类型不一样时右边的数据将强制转换为左边的数据即float类型的b将强制转会为int类型小数点后面的部分直接丢弃导致精度下降。 【小结】 如果不了解整形,c偷偷将你的数据类型改变了你都不知道。 我想大家应该了解整形提升了吧,下次c再偷偷改我们的类型,我们虽然不能阻止,但是却可以知道了吧 今天讲的隐式类型转换就到这里啦
http://www.huolong8.cn/news/86253/

相关文章:

  • 男孩子和男孩子在一起怎么做网站wordpress搬家 500
  • 网上商城网站开发与建立的意义工作用什么邮箱比较正式
  • 公司网站的意义注册公司的流程及费用
  • 打开网站 磁盘空间不足国产 做 视频网站
  • 网站后台登录域名江宁区住房和城乡建设局网站
  • 网站设计专业公司沈阳市有做网站的公司
  • 基木鱼建站网站建设捌金手指专业9
  • 广州做网站最好的公司快三网站开发
  • 网站上的导航栏怎么做云南省网站建设收费调查报告论文
  • 网站背景设计中企动力是正规公司吗
  • 电商erp网站开发全国中小企业服务平台
  • 苏州网站建设介绍网站建设公司运营模式
  • 个人网站可以做淘宝客好的营销网站设计公司
  • 宜宾市做网站多少钱成都专业网站制作建设
  • 以绿色为主色调的网站常州网站开发公司
  • 做网站的公司都是小公司跨境电商怎么注册开店
  • 网站 建设开发合同模板做公司网站的推广工作怎样
  • 在网站的标题上怎么做图标优秀电商设计网站有哪些内容
  • 网站设计的要求有哪些河北廊坊seo网站建设网站优化
  • 网站服务器租用有什么好下载安装微信
  • 佛山网站建设哪儿有微信答题抽奖小程序制作
  • 网站销售需要注册公司吗购物网站大全分类
  • 南宁设计网站设计本家居
  • 建站宝盒破解版网站建设充值入口
  • 广东手机微信网站制作徐州网站建设解决方案
  • 网站水印图片欣赏好模板网站
  • 网站营销方案php 茶叶网站
  • 淘宝客网站api用word做网站相关论文
  • 常州网站制作建设php网页制作代码
  • 杭州建设职业学校官方网站整合营销的特点有哪些