文档介绍:第二章 C语言基础
数据类型
常量
变量
不同类型数据间的转换
运算符和表达式
数据类型
数据类型总表
<
>
空类型void
C
数
据
类
型
基本类型
构造类型
指针类型
字符类型char
枚举类型enum
整型
实型
单精度型float
双精度型double
数组
结构体struct
共用体union
短整型short
长整型long
整型int
数据类型决定:
1. 数据占内存字节数
2. 数据取值范围
3. 其上可进行的操作
一般用大写字母,可以做到“一改全改”
是宏定义预处理命令,不是C语句
直接常量:
整型常量
实型常量
字符常量
字符串常量
如#define PRICE 30
常量
定义:程序运行时其值不能改变的量(即常数)
分类:
符号常量:用标识符代表常量
定义格式: #define 符号常量常量
>
>
>
>
<
>
例符号常量举例
#define PRICE 30
main()
{
int num,total;
num=10;
total=num*PRICE;
printf("total=%d",total);
}
运行结果:total=300
常量
整型常量(整常数)
三种形式:
十进制整数:由数字0~ 123,-456,0
八进制整数:由数字0开头,后跟数字0~,011
十六进制整数:由0x开头,后跟0~9,a~f,A~F表示. 如0x123,0Xff
<
例 12 与 12L
整型常量的类型
根据其值所在范围确定其数据类型
在整常量后加字母l或L,认为它是long int 型常量
实型常量(实数或浮点数)
表示形式:
十进制数形式:(必须有小数点) , .123, , , 123.
指数形式:(e或E之前必须有数字;指数必须为整数) ,123E2, , e-5 , -
<
实型常量的类型
默认double型
在实型常量后加字母f或F,认为它是float 型
例:判断下列指数形式的合法性
3E6 .e3 --2 e
规范化的指数形式
在字母e(或E)之前的尾数部分中,小数点左边应有一位(且只能有一位)非零的数字。
%e控制指数形式输出时,按规范化的指数形式输出。
字符常量
定义:用单引号括起来的单个普通字符或转义字符.
字符常量的值:该字符的ASCII码值
<
转义字符及其含义:
转义字符
含义
\n
\v
\r
\a
\‘
\ddd
\t
\b
\f
\\
\“
\xhh
转义字符
含义
换行
垂直制表
回车
响铃
单引号
3位8进制数代表的字符
水平制表
退格
换页
反斜线
双引号
2位16进制数代表的字符
例:
‘A’-------’\101’-------’\x41’--------65
<
如‘A’——65, ‘a’——97,
‘0’——48 , ‘\n’——10
如‘a’‘A’‘?’‘\n’‘\101’
转义字符:反斜线后面跟一个字符或一个代码值表示
例转义字符举例
main()
{
printf("I say:\"How are you?\"\n");
}
运行结果:(屏幕显示)
Isay:”How are you?”
<
字符常量与字符串常量不同
字符串常量
定义:用双引号(“”)括起来的字符序列
存储:每个字符串尾自动加一个‘\0’作为字符串结束标志
h e l l o \0
例字符串“hello”在内存中
a
a \0
例‘a’
“a”
例空串“”
\0
例: char ch;
ch=“A”;
例: char ch;
ch=‘A’;
变量
标识符
定义:用来标识变量、常量、函数等的字符序列
组成:
只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线
大小写敏感
不能使用关键字作为用户标示符
长度:一般计算机系统规定取前8个字符有效,Turbo C中规定最长32个字符
命名原则:
见名知意
不宜混淆如l与I, o与0
例:判断下列标识符号合法性
sum Sum day Date 3days
student_name #33 lotus_1_2_3
char a>b _above $123
3days
#33
char
$123
a>b
编译程序根据变量定义为其
分配指定字节的内存单元
…...
地址
int a=1, b=-3,c;
a