VC6.0中int与long 两种数据类型有什么区别?

如题所述

在MSDN上的解释是:
On 32-bit platforms, long is synonymous with int.
即:在32位机上,long与int同义。

不同的编译器会分配不同的空间,还跟计算机是多少位的有关,不过一般long是int的两倍长度。

long的定义是其所占用的存储空间大小不小于int。
long 和int只是(可能会)存储空间大小不同,而读取两者中的数据时使用的方法规则是一样的。
__int64 和long long是系统定义的两个基本类型的类型名 虽是两个不同类型名,其实本质类似于同一个类型的两个别名而已。
附加:
__int64(也是一种基本数据类型,是微软的virtual C++编译器定义的一种基本数据类型,而不是C++标准规范(协会)里定义的一种基本数据类型)也是由完全由编译器决定,固定大小为8字节,不受运行环境(的CPU和操作系统位数)影响。

===============================

C语言中整型常量有三种不同的表示形式:
1、八进制整型常量:在八进制数值前面加前缀“0”,其数码取值为0~7。例如:054、0567、05421。
2、十六进制整型常量:前缀为“0X”或“0x“,其数码取值为0~9、A~F 或 a~f。例如:0X3D、0XE0、0xfff等。
3、十进制整型常量:既无前缀也无后缀。例如:254、745、890等。 如将存储为long类型,需要在数字序列最后附一个字母L 或 l 作为后缀。例如:245L、7850L、124l等
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-09-27
好像不同的编译器会分配不同的空间,还跟计算机是多少位的有关,不够一般long是int的两倍长度
第2个回答  2010-09-27
【官方声明】
在MSDN上的解释是:
On 32-bit platforms, long is synonymous with int.

即:在32位机上,long与int同义。本回答被提问者和网友采纳
第3个回答  2010-09-26
你好!!!
long 就是long int 的意思,是占4个字节,而int是占2个字节的。
第4个回答  2010-09-27
在VC6.0下没有区别的,都是4个字节
#include <iostream>
using namespace std;
void main()
{
cout<<sizeof(long)<<endl; //4
cout<<sizeof(int)<<endl; //4
}

VC6.0中int与long 两种数据类型有什么区别?
long 和int只是(可能会)存储空间大小不同,而读取两者中的数据时使用的方法规则是一样的。__int64 和long long是系统定义的两个基本类型的类型名 虽是两个不同类型名,其实本质类似于同一个类型的两个别名而已。附加:__int64(也是一种基本数据类型,是微软的virtual C++编译器定义的一种基本数据...

vc++6.0对于int和long int的数据长度一样,为什么要分开定义
不同平台, int 和long int 长度可能不一样,x86系列CPU采用little endian方式存储数据,简单的说就是数据的高字节在低地址,低字节在高地址。 32位系统你可能看不出来差别,因为int 和long int都在内存中占4个字节,但是早期的16位和64位系统就不同了:16位,int占2个字节,long int占4个字节。6...

c语言,long. int与int的区别,都什么时候用呢
long, 顾名思义就是比int要长.int一般来说占4字节. long一般是8字节. 不过在VC++6.0里, long 和int的长度一样.在ANSIC中定义的long的长度要大于等于int.

VC6.0中int、short、long等类型的存贮长度和取值范围与ANSI标准规定的差...
int 根据硬件不同,可以是16位 整数,同short 也可以是 32位整数,同 long long 32位整数 -2147483648 <===> 2147483647

int和long、short类型之间有什么差别嘛?
嗯、它们的最小存储空间不同,分别为16位、32位和16位,一般而言,short类型为半个机器字(word)长,int类型为一个机器字长,而long类型为一个或两个机器字长(在32位机器中,long类型和int类型的字长通常是相同的),所以它们的表示范围不同。

在VC6.0里将long int型数据赋值给int型变量后为什么数值不变
VC6.0里 long (也作 long int ) 和 int 都是4个字节32位的,是一样的。long long int 是8字节64位的。如果你想测试数据类型强制转换的截断效应,可以:1.把 long int a 改为 long long int a; 并将a设为大于等于 2^32 的值;或者 2.把 int b 改为 short b。

为什么C语言中int型的变量与long型的变量值会不一样?
发生整数溢出了。TC2.0中,int是2字节的,long是4字节的。VC6.0中,int和long都是4字节的。

C数据类型int和long int 表示的范围一样吗?是不是long 在32位机器...
C数据类型int和long int 表示的范围是根据编译器的不同而决定的:在16位编译器中(如Trubo C 2.0)中,int类型占2个字节,而long int占4个字节。在32位编译器中(如VC++ 6.0)中,int 类型占4个字节,long int也占4个字节。

vc6.0里面的int和long都是4字节储存空间,那分出的长整型有什么特殊作用...
是这样的,传统的int类型实际上指向short,是用2个字节存储的,那个时代的计算机都是16位的。直到32位操作系统(比如Windows)出现,才开始淘汰旧用法。现在64位系统的长整型默认用的是8字节存储空间。以后还会出128位操作系统\/256位操作系统,那么默认整型会分别提高到16字节\/32位字节。为什么呢?因为:4...

C语言中(Vc6.0),int, char,double分别占多少字节?
int分为long int和short int,其中long int是4个字节,short int是2个字节。char 1个字节。double 8个字节。

相似回答