C语言程序设计02.pdfVIP

  • 8
  • 0
  • 约 17页
  • 2016-03-11 发布于江西
  • 举报
C语言程序设计02.pdf

下载 第2章 类型、运算符与表达式 变量与常量是程序中所要处理的两种基本数据对象。说明语句中列出了所要使用的变量的 名字及该变量的类型,可能还要给出该变量的初值。运算符用于指定要对变量与常量进行的操 作。表达式则用于把变量与常量组合起来产生新的值。一个对象的类型决定着该对象可取值的 集合以及可以对该对象施行的运算。本章将要对这些构件进行详细讨论。 ANSI C 语言标准对语言的基本类型与表达式做了许多小的修改与增补。所有整数类型现在 都有s i g n e d (有符号)与u n s i g n e d (无符号)两种形式,且可以表示无符号常量与十六进制字符 常量。浮点运算可以以单精度进行,另外还可以使用更高精度的 long double 类型。字符串常量 可以在编译时连接。枚举现在也成了语言的一部分,这是经过长期努力才形成的语言特征。对 象可以说明成c o n s t (常量),这种对象的值不能进行修改。语言还对算术类型之间的自动强制转 换规则做了扩充,使这一规则可以适合更多的数据类型。 2.1 变量名 对变量与符号常量的名字存在着一些限制,这一点在第 1章中没有指出来。名字由字母与数 字组成,但其第一个字符必须为字母。下划线_也被看做是字母,它有时可用于命名比较长的 变量名以提高可读性。由于库函数通常使用以下划线开头的名字,因此不要将这类名字用做变 量名。大写字母与小写字母是有区别的, x与X 是两个不同的名字,一般把由大写字母组成的名 字用做符号常量。 在内部名字中至少前 3 1个字符是有效的。对于函数名与外部变量名,其中所包含的字符的 数目可以小于 3 1个,这是因为它们可能会被语言无法控制的汇编程序和装配程序使用。对于外 部名,ANSI C 标准保证了唯一性仅对前 6个字符而言并且不区分大小写。诸如 i f 、e l s e 、i n t 、 f l o a t等关键词是保留的,不能把它们用做变量名。所有关键词中的字符都必须小写。 在选择变量名时比较明智的方法是使所选名字的含义能表达变量的用途。我们倾向于局部 变量使用比较短的名字(尤其是循环控制变量,亦叫循环位标),外部变量使用比较长的名字。 2.2 数据类型与大小 在C语言中只有如下几个基本数据类型: c h a r 单字节,可以存放字符集中一个字符。 i n t 整数,一般反映了宿主机上整数的自然大小。 f l o a t 单精度浮点数。 d o u b l e 双精度浮点数。 此外,还有一些可用于限定这些基本类型的限定符。其中 s h o r t与l o n g这两个限定符用于限定 整数类型: 28计计C 程序设计语言 下载 short int sh; long int counter; 在这种说明中,i n t可以省去,一般情况下许多人也是这么做的。 引入这两个类型限定符的目的是为了使 s h o r t与l o n g提供各种满足实际要求的不同长度的整 数。i n t通常反映特定机器的自然大小,一般为 1 6位或3 2位,s h o r t对象一般为 1 6位,l o n g对象一 般为3 2位。各个编译程序可以根据其硬件自由选择适当的大小,唯一的限制是, s h o r t与i n t对象 至少要有 1 6位,而l o n g对象至少要有 3 2位;s h o r t对象不得长于 i n t对象,而 i n t对象则不得长于 l o n g对象。 类型限定符s i g n e d与u n s i g n e d可用于限定c h a r类型或任何整数类型。经u n s i g n e d 限定符限定的 n 数总是正的或0 ,并服从算术模2 定律,其中n是该类型机器表示的位数。例如,如果 c h a r对象占 用8位,那么unsigned char变量的取值范围为0 ~ 2 5 5 ,而signed char变量的取值范围则为- 1 2 8 ~ 1 2 7 (在采用补码的机器上)。普通c h a r对象是有符号的还是无符号的则取决于具体机器,但可打印字 符总是正的。 long double类型用于指定高精度的浮点数。如同整数一样,浮点对象的大小也是

文档评论(0)

1亿VIP精品文档

相关文档