c笔记——数据

来源:互联网 发布:js div旋转动画 编辑:程序博客网 时间:2024/05/29 07:56

数据类型关键字

c 数据类型关键字K& R关键字C90关键字C99关键字intsigned_Boollongvoid_Complexshort _Imaginaryunsigned  char  float  double  

整数与浮点数


整数就是没有小数部分的数。


浮点数和数学的实数相对应。

浮点数表示法将一个数分为小数部分和指数部分,并分别存储。



整数和浮点数在应用上的区别:

1.整数没有小数部分,浮点数有小数部分。
2.浮点数可以表示比整数范围大得多的数。
3. 浮点数往往只是实际值的近似值。
4.浮点数运算通常比整数慢。

数据类型

int

short  int  简写 short

long int 简写 long

long long int 简写 long long

unsigned int  简写 unsigned

unsigned long int 简写 unsigned long

unsigned short int 简写 unsigned short

unsigned long long int 简写 unsigned long long 

signed 有符号,默认是有符号的。

int 类型为16位或者32位,依据自然字的大小而定。int 类型被认为是计算机运算处理起来最方便有效的整数类型。


取值范围在limits.h头文件中定义了。

对于int 范围

引用自

1、关于INT取值范围首先是一个标准问题,就拿C来说,INT的取值范围主要由ANSI C规定。这一点是不容置疑的。目前ANSI C规定INT最小不小于16位。

2、关于位宽问题有点像现在面向对像编程里面的继承一样。电脑硬件位宽就是父构件,操作系统OS就是其子构件,编译器又是OS的子构件。子构件可以继承父构件的位宽,但是跟派生不一样,子构件无法超出父构件的位宽。即子构件真包含于父构件。

于是乎得出如此结论:

INT的取值范围取决于编译器。但前提是不超过OS及电脑位宽。

编译器因为其制作的历史条件及环境因素,位宽肯定不会超过当时的操作系统和电脑硬件,但不一定会等于当时的OS及电脑。像TC就是一个很好的例子。当有一个位宽更大的操作系统运行以前的老编译器时(能运行的话),那么所得结果还是以老编译器为准。因此,如果说INT取值范围由操作系统或由电脑决定,虽不能说这种说法错误,但仍然有些不妥。


long 类型可以加l 或者L后缀,long long 类型可以加LL或者 ll  ,U或u标识无符号。

打印整型数

printf()的格式说明符 。
%x 十六进制打印 
%o 八制打印
%u 无符号打印
%ld 打印long类型,也可以 %lx,%lo
%hd 对short类型以十进制打印
%lu 打印unsigned long 类型
%llu %lld 可以打印 long long 类型。


0 0
原创粉丝点击