C语言学习笔记之基本数据类型

来源:互联网 发布:钢筋计算软件下载 编辑:程序博客网 时间:2024/04/30 05:22

数据类型和表达式
C语言字符集
C语言的基本符号可分为4类:
1 英文字母,大小写各26个,共计52个
2 阿拉伯数字:0-9
3 下划线 _
4 特殊符号,主要用来表示运算符

标识符
用来标识变量名、符号常量名、函数名、类型名、文件名等的有效字符序列
1 只能由字母、数字和下划线三种字符组成,且第一个字符必须是字母或下划线
2 大小写敏感
3 用户自定义的标识符不能与关键字同名
关键字:就是对编译器具有特定含义的标识符,用户不能用来作自定义标识符。
(1)与数据类型有关的14个
char int float double signed unsigned short long void struct union typedef enum sizeof
(2)与存储类别有关的
auto extern register static
(3)与程序控制结构有关的12个
do while for if else switch case

C语言的数据类型
基本类型
字符型char
数值类型
整型short int long unsigned
实型
单精度float
双精度double
枚举类型enum
构造类型
数组类型[]
结构体类型struct
共用体类型union
指针类型*
空类型void

一、常量
在程序运行中,其数值不能被改变的量。
1 直接常量:是在程序中直接引用的数据。
(1)整型
十进制,如12
八进制,如012=10
十六进制,如0X12=18
(2)实型
十进制形式,如3.4
指数形式,如12.5e-6
(3)字符型
用单引号括起来的一个字符,如'A','?'
用单引号括起来的由反斜杠/引导的转义字符,如'/n','/101','/x41'
转义字符表
/t横向跳格 /v竖向跳格 /b退格 /r回车
/f换页 //反斜杠 /'单引号 /"双引号
/ddd八进制数表示的ASCII码对应的字符
/xhh十六进制数对应的ASCII码对应的字符
一个字符的多种表现形式65D=41H=101Q
字符A可以表示为'A'、'/X41',65,0X41,0101
要避免的错误:
表示单引号:'''
表示双引号:'"'
表示斜线:'/'
字符的值域,即字符的取值范围,ASCII字符表中的所有字符,每个字符型数据在内存中
占用一个字节,包括可显示字符和非显示字符0-127或0-255
2 符号常量
在程序中不能给它赋值
定义形式:#define 标识符 常量数据
例如:#define PI 3.14159
在程序预处理时,凡是出现标识符PI的地方都将用数据3.14159来替换。
二、变量
变量代表计算机内存中某一存储空间,该存储空间中存放的数据就是变量的值。
使用变量必须是,先定义再使用
1 定义形式
2 整型变量
基本型,int
短整型,short int
长整型,long int
无符号型,unsigned int,unsigned short,unsigned long
101是整型,101L则是长整型
3 实型分类
类型 内存 有效数字
float 4字节 6-7
double 8字节 15-16
long double 16字节 18-19
4 字符变量
一个字符变量只能存放一个字符
5 变量初始化
Example:
int a=5,b=3; T
int a=b=c=3 F
int a,b,c; a=b=c=3; T

运算符与表达式
算术运算符和算术表达式
3/5=0 3./5=0.6 3/5.=0.6
a%b=a-n*b a、b必须为负数
5%(-3)=5-(-1)*(-3)=2 (-12)%(-5)=(-12)-2*(-5)=-2
优先级() --------> * / % --------> + -
结合性
自增自减运算符
++i,--i 先增(减)再用
i++,i-- 先用再增(减)
结合性
例: i=2;
j=-i++;
分析:
1 ++、--、+、-是同级运算符,结合方向,自右向左
2 -i++等价于-(i++)
3 对于括号内的自增运算,又要先使用,再使i加1
运算结果是:i的值为3,j的值为-2
关系运算符和关系表达式
1 关系运算符 < > <= >= == !=
2 关系表达式 算术运算符优先级高于关系运算符,结合方向,自右向左
逻辑运算符
! 非
&& 与
|| 或
非0为真 0为假(包括0,0.0,/0,NULL)
优先级: ! 算术运算符 关系运算符 && ||
注意:逻辑运算中要注意短路。
赋值运算符
例如: x=(y=12)/4,y值为12,x值为3,表达式的值为3
x=y=12/4,y为3,x为3,表达式为3
x=(y=12/4),y为3,x为3,表达式为3
(x=y)=12/4,为错误的表达式
复合赋值运算符10种
*= /= %= += -= <<= >>= &= ^= |=
条件运算符
? :
逗号运算符
求值规则,从左到右依次计算各表达式的值,表达式的值是最后一个表达式的值
例如:y=(a=4,b=5,a+b);计算的结果y=9
求字节运算符
sizeof(变量名/类型名)
求得变量或某种数据类型所需的字节数,运算结果为整型数

数据类型转换
C语言允许整型、实型、字符型数据进行混合运算。
有3中转换方式:
自动转换
赋值转换
强制转换 (类型名)表达式