基本数据类型
整形
(8字节)长整形 long int (2字节)短整形 short int (4字节)整形int
浮点型
(4字节)float 单精度 (8字节)double 双精度
字符
(1字节)char 定义的形式是char ch = 'a';
指针类型
是什么?
指针是用来指向地址的,并可以操控指向空间的内容
有什么用?
可以操控指向空间的内容,节省内存,实现多个返回值
怎么用?
定义一个指针指向一个变量的地址或者函数的地址或者一维二维数组的地址
什么时候用?
在需要的时候用
有什么特点?
指针是用来存储地址的,存储的地址可以变化占用空间8个字节,指阵本身也有地址,指针可以改变所指向空间里的内容
p是存储的地址,*p是指向地址所在空间的内容 指针不初始化时不要使用,因为它会指向任意一个地址,也称为野指针,一旦用野指针会很危险指针也是有类型的,指针会根据本身的类型在取字节的时候所取的字节数也不一样
空类型
void 函数名(形参){具体代码}
构造类型
数组
是什么?
是用来存放同种类型变量的值的一个集合
有什么用?
把同种类型的数据管理起来
怎么用?
int arr[长度]={根据长度赋值};通过数组名与下标对数组的每一个元素进行改变
什么时候用?
在需要管理相同类型的数据的时候用
有什么特点?
数组也是内存中一部分的连续空间,数组本身也有地址 数组的地址与数组中第一个元素的地址相同,数组中的每一个元素都有地址,地址相差的字节数也数组的类型有关,数组在当实参传递的时候,不会再内存中新开一部分空间,之后吧地址传出去,然后与外部的函数共享一个内存.
二维数组
是什么?
是用来存储同种类型一维数组的数组
有什么用?
可以用来存储更多的数据,管理同种类型的数据,就好像是一个班是二维数组,而每一个小组又是一个一维数组
怎么用?
定义:类型 数组名 [子数组的长度i][子数组中元素的长度j]={i个{j个元素}}
初始化
赋值
使用 [i][j]代表数组 [0<i-1][0<j-1]代表数组的元素
什么时候用?
当管理一堆同种类型的数组时
特点
每个子数组的类型与长度一样
字符串
是什么?
一串字符,也是以\0结尾的字符数组
有什么用?
用来表示一串字符或者是一段数据
怎么用?
两种定义方式 char a[4]={'a','b','c','\0'}; char a[]="abc";
什么时候用?
当需要表示一串字符或文本的时候.
有什么特点?
结尾一定要用\0 输出时候要用%s, 计算字符的个数要用strlen但是要调用string .h文件 在计算长度的时候strlen 从第一个字符开始,遇到\0结束;字符串一定是字符数组,但是字符数组不一定是字符串
指针与数组
什么是指针数组?
用来存储n个地址的集合
什么是数组的指针?
int a[4]={};
int (*p)[]4=&a p就是数组的指针 数组的地址与数组第一个元素的地址是一样的 但是代表的含义不一样.
什么是指针数组?
int a,b,c,f;
int *p[4]={&a,&b,&c,&f}; 用*p[0]来指针数组的第一个元素 值是一个地址
什么是数组元素的地址?
int a[3]={3,66,7};
int *p = a 或者int *p = &a[0];
此 时的p为a[0]的地址,*p为a[0]的值. |