本文主要是介绍C语言程序设计谭浩强版 一,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本章的一些概况这里就不说了,直接进入细节的学习!
3.1、C的数据类型
数据类型分为:基本类型、构造类型、指针类型、空类型
基本类型又分为:整型、字符型、实型(浮点型:又分为单精度型、双精度型)、
枚举类型
构造类型又分为:数组类型、结构体类型、共用体类型
3.2、常量和符号常量
在程序运行过程中,其值不能被改变的量成为常量。
常量区分为不同类型,如12、0、-3为整型常量,4.6、-1.23为实型常量,‘a','b'为字符
常量
例3.1 符号常量的使用
#include<stdio.h>
/* 符号常量的使用 */
#define PRICE 30
int main(void)
{int num,total;num = 10;total = num*PRICE;printf("total = %d\n",total);
}
上面的例子介绍了符号常量的使用,使用define来定义的,再后面的学习中,我们会详细的介绍它的使用方法。
习惯上,符号常量名用大写,变量名用小写,以示区别。
使用符号常量的好处是:
1、含义清楚,我们可以用见名知意的方式来定义符号常量,以免在程序中出现很多常
数,搞不清楚各个常数究竟代表什么意思。
2、在需要改变一个常量时能做到一改全改。如,上面例子中我可以只修改
#define PRICE 35,我就可以修改整个程序中所有出现PRICE的地方的值
3.2.1 变量
其值可以改变的量称为变量。
标识符,简单的地说就是一个名字,C语言规定,标识符只由字母,数字和下划线三种字符组成,且第一个字符必须是字母或者下划线
在C语言中,要求对所有用到的变量做到强制定义,也就是先定义,后使用。
1、凡未被事先定义的,不作为变量名,这就能保证程序中变量名使用的正确
2、每一个变量被指定为一确定类型,在编译时就能为其分配相应的存储单元。
3、指定每个变量属于一个类型,这就便于在编译时,据此检查该变量所进行的
运算是否合法
例如:a b都为整型变量,可以进行求余运算,若是a b中有实型变量,则不允许进行求余运算。
3.3、整型数据
3.3.1 整型常量的表示方法
十进制:如 123、 -456等
八进制:以数字0开头,如0123、-011
十六进制:以0x开头,如0x123、-0x12
3.3.2 整型变量
1、整型数据在内存中的存放形式
数据在内存中是以二进制补码的形式存放的,一个正数的补码和其源码的形式相同,负数的补码是该数的绝对值的二进制形式,按位取反再加1.整型变量在内存中占的字节数取决于编译器,本书以Turbo C为例,一个整型变量占2个字节。
我们列举如下的例子,来看一下整型变量在内存的实际存放情况,定义两个整型变量10和-10
int i,j;
i = 10;
j = -10;
整数10 在内存中的存储情况如下图
-10的存储情况如下
数由此可知,在整数的16位当中,最左面的一位是表示符号的,该位为0,表示正,为1表示负。
2、整型变量的分类
下表列出了Turbo C中各类整型量所分配的内存字节数及数的表示范围。
3、整型变量的定义
对变量的定义,一般是放在一个函数的开头部分的声明部分。我们举例来说明一下整型变量的定义和使用
#include<stdio.h>
int main(void)
{int a,b,c,d;unsigned u;a = 12;b = -24;u = 10;c = a + u;d = b + u;printf("a + u = %d,b + u = %d\n",c,d);
}
4、整型变量的溢出
我们知道,一个有符号的整型变量允许的最大值为32767,如果我们再加1会出现什么情况呢?我们用下面的例子来看一下。
#include<stdio.h>
int main(void)
{int a,b;a = 32767;b = a + 1;printf("%d %d\n",a,b);
}
在Turbo C中计算b的结果为-32768,表明数据溢出后,会调到整型变量能表示的最小值。
注:实际情况并不是这样的,现在的编译器都很聪明,它会告诉你,你定义的数据超出了整型变量的表示范围,并不会出现溢出的情况
这篇关于C语言程序设计谭浩强版 一的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!