您的位置:首页 > 其它

C语身教程第二章: 数据规范、运算符、表达式(1)

2011-03-07 18:49 351 查看
C言语的数据规范

  在第一课中,我们曾经看到法式中使用的各类变量都应过后加以声明,即先声明,后使用。对变量的声明可以包孕三个方面:
·数据规范
·存储规范
·作用域
  在本课中,我们只引见数据规范声明。别的声明在从此各章中接连引见。所谓数据规范是按被声明量的性质,泄漏揭示情势,占据存储空间的多少,构造特点来分别的。在C言语中,数据规范可分为:根基数据规范,构造数据规范,指针规范,空规范四大大类。

1.根基数据规范

  根基数据规范最次要的特点是,其值不行以再分化为别的规范。也即是说,根基数据规范是自我声明的。

2.构造数据规范构造数据规范

  是依据已界说的一个或多个数据规范用构造的要领来界说的。也即是说,一个构造规范的值可以分化成多少个“成员”或“元素”。每个“成员”都是一个根基数据规范或又是一个构造规范。在C言语中,构造规范有以下几种:
·数组规范
·构造规范
·联络规范

3.指针规范

  指针是一种非凡的,同时又是具有次要作用的数据规范。其值用来泄漏揭示某个量在内存储器中的地址。固然指针变量的取值近似于整型量,但这是两个规范完全分比如的量,因而不克不及等量齐不雅。4.空规范在挪用函数值时,常日应向挪用者前往一个函数值。这个前往的函数值是具有一定的数据规范的,应在函数界说及函数声明中给予声明,例如在例题中给出的max函数界说中,函数头为: int max(int a,int b);此中“int ”规范声明符即泄漏揭示该函数的前往值为整型量。又如在例题中,使用了库函数 sin,由于系统规律其函数前往值为双精度浮点型,因而在赋值语句s=sin (x);中,s 也必需是双精度浮点型,以便与sin函数的前往值对等。所以在声明部门,把s声明为双精度浮点型。可是,也有一类函数,挪用后并不必要向挪用者前往函数值, 这种函数可以界说为“空规范”。其规范声明符为void。在第五章函数中还要细致引见。在本章中,我们先引见根基数据规范中的整型、浮点型和字符型。别的规范在从此各章中接连引见。

  关于根基数据规范量,按其取值可否可窜改又分为常量和变量两种。在法式尝试过程中,其值不爆发窜改的量称为常量,取值可变的量称为变量。它们可与数据规范连络起来分类。例如,可分为整型常量、整型变量、浮点常量、浮点变量、字符常量、字符变量、布列常量、布列变量。在法式中,常量是可以不经声明而直接引用的,而变量则必需先声明后使用。

整型量

整型量包孕整型常量、整型变量。整型常量即是整常数。在C言语中,使用的整常数有八进制、十六进制和十进制三种。

整型常量

1.八进制整常数八进制整常数必需以0开头,即以0作为八进制数的前缀。数码取值为0~7。八进制数常日是无符号数。
以下各数是合理的八进制数:
015(十进制为13) 0101(十进制为65) 0177777(十进制为65535)
以下各数不是合理的八进制数:
256(无前缀0) 03A2(搜罗了非八进制数码) -0127(出现了负号)

2.十六进制整常数
十六进制整常数的前缀为0X或0x。其数码取值为0~9,A~F或a~f。
以下各数是合理的十六进制整常数:
0X2A(十进制为42)  0XA0 (十进制为160)  0XFFFF (十进制为65535)
以下各数不是合理的十六进制整常数:
5A (无前缀0X)  0X3H (含有非十六进制数码)

3.十进制整常数
十进制整常数没有前缀。其数码为0~9。
以下各数是合理的十进制整常数:
237 -568 65535 1627
以下各数不是合理的十进制整常数:
023 (不克不及有前导0) 23D (含有非十进制数码)

版权声明:
原创作品,允许转载,转载时请务必以超链接情势标明文章 原始出处 、作者信息和本声明。否则将清查功令责任。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: