C语言变量定义char、int、long有什么区别?

如题所述

1、char 在所有机器上都是占一个字节,有符号数范围是-128到127,一般用来表示字符。字符在存储中就是存储的ascii值。

2、int 在16位机上占2字节,现在基本没有了。 在32|64位机上占四字节,有符号数范围是-2^31到2^31-1。

3、long 在32位编译系统下占4字节,与int相同。在64位系统下占8字节,可表示的数据范围是-2^63到2^63-1。

拓展资料:

C语言

是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

语言标准

起初,C语言没有官方标准。1978年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。布莱恩·柯林汉(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本书,名叫《The C Programming Language》。这本书被 C语言开发者们称为K&R,很多年来被当作 C语言的非正式的标准说明。人们称这个版本的 C语言为K&R C。

特点

1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。

2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。

3、不同的变量类型可以用结构体(struct)组合在一起。

4、只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。

5、部份的变量类型可以转换,例如整型和字符型变量。

6、通过指针(pointer),C语言可以容易的对存储器进行低级控制。

7、预编译处理(preprocessor)让C语言的编译更具有弹性。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-05
一个变量再定义是类型就固定了。如int a在定义域内a都是整形。当然可以用强制类型转换来改变。你可以用sizeof()来测任意一个变量的长度。
如 对于int a ;sizeof(int)=2,sizeof(a)=2;表示int性和a都是2字节数据。
一般int char都是2字节。
float就是单精度其范围是10e-38到10e38,有效位为6-7.(e是指数意思)
double就是双精度其范围是10e-308到10e308,有效位15-16.
long doule是长双精度其范围是10e-4931到10e4931.有效位18-19.
%7表示输出这个数据的长度为7,一般是为了数据显示整齐。
如我输出1234,只有4位,那我就要在自动不3各空格。
当数据超出预定位宽时好像是按实际位输出,这个有点记不清了。
希望我的回答对你有帮助
另外,虚机团上产品团购,超级便宜本回答被网友采纳
第2个回答  2011-07-03
除了类型不同外,他们占用的内存大小也不同(long和int占用4个字节,char占用1字节)
第3个回答  2011-07-03
char 是定义字符型变量(字母,符号);
int 和 long 是定义整型变量(整数),但是long的范围比int的范围大。
第4个回答  2011-07-09
char,int,long都是数据类型,char表示字符,int表示整型,long表示长整型。
给变量指定了数据类型后,变量所给的值或赋予的值只能是相应的类型。否则程序会出错。