指针
指针
指针在64位编译器下占用8个字节
指针变量只能存储地址
指针 变量前的*号代表访问指针变量指向的那一块存储空间
同一个变量可以有多个指针指向他
指针的指向可以修改
不要访问野指针
字符串常用方法
字符串常用方法
include
1.拼接
char str1[10] = “zyz”;
char str2[10] = “cool”;
//注意拼接后的总长度
dest:目标 src:源
strcat(str1,str2);
2.拷贝
3.比较
字符串基本概念
字符串基本概念
//双引号引起来的就是字符串
//字符串是同一种类型的数据租场,并且是有序的,二数组就是用以存储很多同一种类型的有序数据,所以可以使用数组来保存字符串
//字符串系统自动带一个 \0
//%s遇到\0就为止
二维数组和函数
二维数组和函数
二维数组的多种初始化方式
二维数组的多种初始化方式
1.定义的同时初始化
int names[2][3] =
{
{‘z’,’y’,’z’},
{‘s’,’s’,’a’}
}
2.先定义在初始化
int name2[2][3;
name2[0][0] = ‘z’;
name2[0][1] = ‘y’;
name2[0][2] = ‘z’;
name2[1][0] = ‘h’;
name2[2][0] = ‘h’;
name2[3][0] = ‘h’;
3.完全初始化
int name3[2][3] =
{
{‘z’,’y’,’z’},
{‘z’,’y’,’z’}
};
4.不完全初始化
int name4[2][3] =
{
{‘z’,’y’}
};
5.省略元素个数的两种写法
//明确的告诉二维数组,我们有两个一维数组
int name5[2][3] =
{
‘z’,’y’,’z’,
‘z’,’y’,’z’
};
//没有告诉二维数组我们有几个一维数组
//如果在“定义的同时”进行csh,那么一维数组的个数可以省略,系统自动判断
int name6[][3] =
{
‘z’,’y’,’z’,
’s’,’s’,’a’
};
6.错误写法
//注意点:每个一维数组的元素个数不能省略
int name6[2][] =
{
‘z’,’y’,’z’,
’s’,’s’,’a’
};
int name7[2][] =
{
{‘z’,’y’,’z’},
{’s’,’s’,’a’}
};
二维数组
二位数组
二位i:数组张总的每一个元素有事一个数组,那么这个数组就称之为二位数组元素类型,数组名称[一维数组的个数][每个一维数组的元素的个数];
元素类型:说明二维数组中每一个一维数组存储说明类型的数据
以为数组的个数:说明二维数组右多少个元素
每个一维数组的元素个数:说明二维数组中每一个一维数组的元素个数
示例:
int scoress[3][5] =
{
{1,1,3,5,8},
{1,1,3,5,8},
{1,1,3,5,8},
}
遍历数组:
for(int i = 0 ;i < 2;i++){
1.取出一维数组
for(int j = 0;j< 3 ;j++){
pringtf(“name[%i][%i] = %c \n”,i,j,name[i][j]);
}
}