首页 > 其他分享 >我的第一篇博客hhh

我的第一篇博客hhh

时间:2023-10-12 17:33:09浏览次数:32  
标签:第一篇 32 unsigned long int 编译器 博客 2147483648 hhh

为什么宏INT_MIN要写成-2147483647-1 ?

编译器遇到型如-X的数值,它首先会确定X的数据类型,然后取X的负数。-2147483648,后面的是unsigned int还是long? 如果是unsigned int,无符号数求反,得到-2147483648是unsigned int类型,值为2147483648;如果是long,-2147483648就是long类型,值就是-2147483648。但是它们都不是int类型。
做个测试,short a = -2147483648;编译器会告诉你,overflow in conversion from ‘long int’ to ‘short int’,所以在我的电脑上-2147483648是long类型。

 

为什么 200*300*400*500 = -884901888 ?

十进制整数会被编译器看作int类型,当int为32位时,32位无符号最大42亿,这个乘积120亿,先模42亿,得30多亿,int有符号最大21亿,所以减去21亿,echo $(((200*300*400*500)%2**32-2**32))。

标签:第一篇,32,unsigned,long,int,编译器,博客,2147483648,hhh
From: https://www.cnblogs.com/fanghai/p/17759996.html

相关文章

  • 每日博客
    绘制上下文图和er图   ......
  • 每日博客
    某大学为进一步推进无纸化考试,欲开发一考试系统。系统管理员能够创建专业方向、课程编号、任课教师等相关考试基础信息。教师和考生进行考试相关工作。系统与考试有关的主要功能如下:(1)考试设置:教师制定试题(题目和答案),制定考试说明、考试时间和提醒时间等考试信息,录入参加考试的学......
  • Linux第六周技术博客
    今天我们学习文件的权限操作在Windows系统里文件的属性包括文件的创建者、创建时间、创建的位置和大小,在Linux系统中文件的属性同样包含这些。我们在/home/swxy中创建一个文件file01,用ll命令来查看文件的各种属性。llfile01-rw-r--r--.1rootroot010月1115:53file01在......
  • 开启博客之旅
    今天申请了“博客园”账号,后续计划使用这个平台,可以作为生活所想记录,读书笔记的分享以及喜欢的文字摘录。每天都希望自己可以有不同资讯信息的输入,的确也是如此安排自己的时间,渐渐的觉得希望有个输出的途径,也是倒逼自己整理、复盘,可以促进更多的思考。最近两天在处......
  • 模拟集成电路设计系列博客——2.2.3 折叠Cascode放大器的摆率
    2.2.3折叠Cascode放大器的摆率两个二极管接法的晶体管\(Q_{12}\)和\(Q_{13}\)在正常工作时截止,对于放大器的工作几乎没有影响。但是他们能共有效的提升数倍摆率[Law,1983]。为了理解他们的功能,首先考虑没有这两个晶体管时的摆率限制。假定有一个很大的输入差分电压导致\(Q_1\)......
  • 博客笔记要求
    笔记风格的三条建议:结构清晰、细化(看着舒服便于查找)typota风格设置,善用引用、序号、点(看着美观)多放图片,大小合适和大小一致(看着美观)笔记内容的三条建议:保证内容正确性,多测试(集百家之言并有自己理解)(1)看懂(2)善用比喻能讲懂(3)总结经验尽量用自己的代码做测试(便于理解和......
  • 阅读讨论第一篇
    读书讨论是指一个或一群人基于所读的书籍内容进行交流、分享和深入探讨的活动。在这样的讨论中,参与者可以就书中的情节、主题、角色、意义、作者的观点等方面展开对话和思考。读书讨论可以以各种形式进行,包括小组讨论、读书俱乐部、在线书评论坛等。参与者可以提出自己对书中内容......
  • 如何优雅的上传博客
    平常使用markdown(Typora)写文档很方便,在各式各样的平台展示都不成问题。但是图片上传博客平台却很不方便,上传git平台另说。这里介绍一个本人修改的博客图片上传工具,xle97/dotnet-cnblogs......
  • IDEA工具第一篇:细节使用-习惯设置
    安装好Idea后,直接上手clone代码进入编码时代,有没有那么一刻你会觉用起来没有那么顺手流畅呢?......
  • gdb 调试segmentation fault 步骤 转载博客
    (1)执行命令:ulimit-a查看系统是否可以产生core文件,如果corefilesize是0就需执行第二步(2)执行命令:ulimit-c2048,2048是你指定的core文件大小,可以根据自己的需要修改(3)gcc编译你的程序:gccyour_program.c-oyou_exe-g,一定要加“-g”选项(4)./you_exe运行程序,假如出现段......