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

如何手机网站建立北京网站设计建设

如何手机网站建立,北京网站设计建设,来年做啥网站致富,公司注册网站模板#x1f6a9;纸上得来终觉浅#xff0c; 绝知此事要躬行。 #x1f31f;主页#xff1a;June-Frost #x1f680;专栏#xff1a;C语言 #x1f525;该篇将探讨 操作符 和 类型转换 对表达式求解的影响。 目录#xff1a; 隐式类型转换算术转换操作符的属性❤️ 结语 隐… 纸上得来终觉浅 绝知此事要躬行。 主页June-Frost 专栏C语言 该篇将探讨 操作符 和 类型转换 对表达式求解的影响。 目录 隐式类型转换算术转换操作符的属性❤️ 结语 隐式类型转换 C的整型算术运算总是至少以缺省(默认)整型类型的精度来进行的。为了获得这个精度表达式中的字符和短整型操作数在使用之前被转换为普通整型这种转换称为整型提升。 整型提升规则 整形提升是按照变量的数据类型的符号位来提升的。 如果是无符号的整形提升那么高位补0。 为了更好的理解这样的概念将举一个例子来解释 #includestdio.h int main() {char a 5;char b 127;char c a b;printf(%d\n, c);return 0; }char a 5; 5是整型类型32个bit补码是00000000 00000000 00000000 00000101将5存储到a中a是有符号char类型只有8个bit所以要发生截断将低位的 00000101 存储到a中。 char b 127 同理127的补码是 00000000 00000000 00000000 01111111 存储b时发生截断所以将低位的 01111111 存储到b中。 char c a b; 这里的操作数 a 和 b 是字符类型所以要发生整型提升。 printf(%d\n, c); %d - 10进制的形式打印有符号的整数 , 而c是字符类型所以再次发生整型提升。 由于这种转换是隐式的也无法监控到那如何证明确实有这样的转换呢 1. 当判断 a 0xb6 时a会发生整型提升由 10110110 变为 11111111 11111111 11111111 10110110 本质上 0xb6 是个数值 可以看作 00000000 00000000 00000000 10110110 这自然是不同的,所以结果是假b同理但是c是整型不需要整型提升所以表达式 c0xb6000000 的结果是真 。 2. c 和 -c 参与了表达式运算发生了整型提升转化为了普通整型。 通过以上两个例子可以看出在表达式求解过程中有着整型提升的参与。 整型提升有两个意义 1.表达式的整型运算要在CPU的相应运算器件内执行CPU内整型运算器(ALU)的操作数的字节长度一般就是int的字节长度同时也是CPU的通用寄存器的长度。因此即使两个char类型的相加在CPU执行时实际上也要先转换为CPU内整型操作数的标准长度。 2.通用CPUgeneral-purpose CPU是难以直接实现两个8比特字节直接相加运算虽然机器指令中可能有这种字节相加指令。所以表达式中各种长度可能小于int长度的整型值都必须先转换为int或unsigned int然后才能送入CPU去执行算。 当表达式中有char 和 short 时需要整型提升当表达式中没有这两个类型只剩下别的类型时就会有算术转换的参与。 算术转换 如果某个操作符的各个操作数属于不同的类型那么除非其中一个操作数的转换为另一个操作数的类型否则操作就无法进行。下面的层次体系称为寻常算术转换。 例如 int a 0; float b 5.5; 如果要执行 a b , a 会在计算的时候临时转化为float类型与 b 相加后得到一个 float 类型的结果。 操作符的属性 复杂表达式的求值有3个影响因素 1.操作符的优先级 2.操作符的结合性; 3.是否控制求值顺序; 两个相邻的操作符先执行哪个取决于他们的优先级。如果两者的优先级相同取决于他们的结合性。 操作符属性表优先级从上至下 操作符描述用法示例结果类型结合性是否控制求值顺序聚组表达式与表达式同N/A否函数调用rexprexp…,rexprexpL-R否[ ]下标引用rexp[rexp]lexpL-R否.访问结构成员lexp.member_namelexpL-R否-访问结构指针成员rexp-member_namelexpL-R否后缀自增lexp rexpL-R否–后缀自减lexp –rexpL-R否!逻辑反! rexprexpR-L否单目表示正值 rexprexpR-L否-单目 表示负值- rexprexpR-L否前缀自增 lexprexpR-L否–前缀自减– lexprexpR-L否*间接访问* rexplexpR-L否取地址 lexprexpR-L否sizeof取其长度 以字节表示sizeof rexp sizeof(类型)rexpR-L否(类型类型转换(类型) rexprexpR-L否*乘法rexp * rexprexpL-R否/除法rexp / rexprexpL-R否%整数取余rexp % rexprexpL-R否加法rexp rexprexpL-R否-减法rexp - rexprexpL-R否左移位rexp rexprexpL-R否右移位rexp rexprexpL-R否大于rexp rexprexpL-R否大于等于rexp rexprexprexp否小于rexp rexprexpL-R否小于等于rexp rexprexpL-R否等于rexp rexprexpL-R否!不等于rexp ! rexprexpL-R否位与rexp rexprexpL-R否^位异或rexp ^ rexprexpL-R否I位或rexprexprexpL-R逻辑与rexp rexprexpL-R是II逻辑或rexprexprexp? :条件操作符rexp? rexp : rexprexpN/A是赋值lexp rexprexpR-L否以…加lexp rexprexpR-L否-以…减lexp - rexprexpR-L否*以…乘lexp * rexprexpR-L否/以…除lexp / rexprexpR-L否%以…取模lexp % rexprexpR-L否以…左移lexp rexprexpR-L否以…右移lexp rexprexpR-L否以…与lexp rexprexpR-L否^以…异或lexp ^ rexprexpR-L否I以…或lexp I rexprexpR-L否,逗号rexp rexprexpL-R是 ❗️但是就算操作符有这些属性也不一定会使得表达式有着唯一的求解路径例如 例1 a* b c * d e * f;两种求解路径 例2 int c 3; c --c;这样的表达式有两种路径 操作符的优先级只能决定自减–的运算在的运算的前面但是我们并没有办法得知操作符的左操作数的获取在右操作数之前还是之后所以结果是不可预测的是有歧义的。 ⚠警告  表达式如果不能通过操作符的属性确定唯一的计算路径那这个表达式就是存在问题的。 ❤️ 结语 文章到这里就结束了如果对你有帮助你的点赞将会是我的最大动力如果大家有什么问题或者不同的见解欢迎大家的留言~
http://www.eeditor.cn/news/121481/

相关文章:

  • 免费word文档模板下载网站江安县建设招标网站
  • icp备案网站管理员有负责吗微信自带小程序商城
  • dw做网站一般设为什么样屏蔽蜘蛛网站还会被收录吗
  • 北京网站建设曝光尚词网网页设计图片的应用
  • 建筑网站免费嵌入式培训机构哪家好
  • 网站开发术语苏州手机app开发公司
  • 网站的技术解决方案如何建立网址
  • 为什么网站建设要值班食品包装
  • 建立网站的英文怎么说建设彩票网站合法吗
  • 设计师网站使用不了六安论坛网站
  • 网站建设 全包 模板佛山响应式网站建设
  • 怎样创建一个国际网站进出口网站贸易平台有哪些
  • 猪八戒网仿照哪个网站做的站内搜索工具
  • 山西宏图建设集团有限公司网站网页制作公司兼职
  • 济宁网站建设制作设计东莞大岭山中西医结合医院
  • 中小企业网站设计与开发目的自己建设网站难不难
  • 网页设计网站的分析如何在京东上开网店
  • 品牌网站建设教程如何做美发店网站
  • 空气净化器用什么网站做外贸如何建设影视网站首页
  • 哪有网站给光头强做面自己怎么制作logo
  • 奉化网站关键词优化费用雄安企业网站建设
  • 使用jsp开发的网站新网站上线 怎么做seo
  • 网站空间租wordpress清楚所有评论
  • 网站开发tornado宿迁房产查询网上查询系统
  • 物流建设网站总结报告上海近期大事件
  • 章丘网站开发培训淘宝客网站html
  • 网站建设后台有哪些项目建立网站需要什么硬件
  • 德阳建设网站的公司安汇达大宗商品交易平台
  • 织梦怎么在本地编辑多个网站保定免费做网站
  • 廊坊建站软件用vs做网站后台开发可以吗