C语言中int、long int、long long的区别

C语言中int、long int、long long的区别1、关于int和longint(1)在VC下没有区别。两种类型均用4个字节存放数据。(2)VC是后出的编译器,之前有很多早期的C编译器,在早期编译器下longint占4个字节,int占2个字节。(3)之所以有“整型”和“长整形”两种不同类型,是C语言在诞生时发明者规定好的,前者存储的整数的值域小于后者。 这个问题不用牵肠挂肚,在VC下用谁都可以。

大家好,又见面了,我是你们的朋友全栈君。

1、关于int 和 long int

(1)在VC下没有区别。两种类型均用4个字节存放数据。

(2)VC是后出的编译器,之前有很多早期的C编译器,在早期编译器下long int占4个字节,int占2个字节。

(3)之所以有“整型”和“长整形”两种不同类型,是C语言在诞生时发明者规定好的,

前者存储的整数的值域小于后者。 

这个问题不用牵肠挂肚,在VC下用谁都可以。

(4)在标准中,并没有规定long一定要比int长,也没有规定short要比int短。

标准时这么说的:长整型至少和整型一样长,整型至少和短整型一样长。
这个的规则同样适用于浮点型long double至少和double一样长,double至少和float一样长。
至于如何实现要看编译器厂商

(5)short<=int<=long

VC里面还有个
long long 是占8个字节的

2、关于long long

(1)long long在win32中是确实存在,长度为8个字节;定义为LONG64。
为什么会出现long int呢,在win32现在系统中,长度为4;在历史上,或者其他某些系统中,int长度为2,是short int。
即便是long long,在TI的有款平台中,长度为5。
也就是说,每种类型长度,需要sizeof才知道,如果可能,最好用union看看里面的数据,可以消除一些类型的假象长度。  

(2)visual c++ 6.0中不支持,long long int,是在vc99中添加此功能的,所以我们在vc6.0中编译有long long 的数据时,会出错,但是在VS更高的版本中,是能通过的。

ACM题目中“求矩形的个数”那道题,就需要用到long long。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142009.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 阿里云服务器开放指定端口吗_阿里云服务器怎么远程连接

    阿里云服务器开放指定端口吗_阿里云服务器怎么远程连接https://yq.aliyun.com/articles/701181?spm=a2c4e.11153940.0.0.465214c3lZ4GTP&type=2

    2022年9月28日
  • 图书推荐:《Java程序员修炼之道》 Skip to end of metadata

    图书推荐:《Java程序员修炼之道》 Skip to end of metadata

    2021年5月11日
  • PDB 文件

    PDB 文件PDB文件什么是PDB文件PDB(ProgramDataBase)即程序的基本数据,是VS编译链接时生成的文件,每个程序集(EXE或DLL)都有一个与之对应的PDB文件。DPB文件主要存储了VS调试程序时所需要的基本信息,主要包括源文件名、变量名、函数名、对应的行号等等。因为存储的是调试信息,所以一般情况下PDB文件是在Debug模式下才会生成。…

    2022年6月2日
  • 详解C/C++中volatile关键字

    详解C/C++中volatile关键字一、volatile介绍volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一致的现象。下面举例说明。在DSP开发中,经常需要等待某个事件的触发,所以经常会写出这样的程序:这段…

    2022年6月1日
  • extremeDB_hedging strategy

    extremeDB_hedging strategyeXtremeDB(最短路径最快速的数据管理)eXtremeDB是美国麦科捷科技有限公司(McObjectLLC)开发的一款专业的嵌入式实时内存数据库,它具有高性能,低开销,稳定可靠的极速实时数据管理能力,应用领域有军事/航空航天,网络和电信,工业控制,电子消费/远程信息处理,金融/企业,医疗。核心版本:*eXtremeDB内存版*eXtr…

    2022年10月15日
  • 一些非常有价值的资料网站有哪些_比较有价值的网站

    一些非常有价值的资料网站有哪些_比较有价值的网站最近在搜集资料的时候,发现了很多好的资料网站,不忍独享,陆续整理出来,贴这里。我先有一个贴一个,等到攒到足够多的时候,我再重新进行整理:电影类:IMDb:http://www.imdb.com/(美国著名互联网电影资料库(InternetMovieDatabase,简称IMDb)是一个关于电影演员、电影、电视节目、电视明星、电子游戏和电影制作的在线数据库。亚马逊公司旗下网站)烂番茄…

    2022年9月3日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号