已掌握知识
1.*:间接运算符,取值运算符
2.字符串是地址
3.[] = *(); ptr[i] = *(ptr + i);chu'shi'hua
5.当指针被赋值NULL时 不能对零地址空间进行操作;
6常量不能改;
7数组名是指针常量,保存数组首元素的地址
8.若 a是数组名,&a 数组地址
9对一维数组地址取值 = 数组首元素地址 *(&a) = a
对数组名取地址 = 数组地址&a
10 二维数组可以省略行
二维数组名还是常量 第一个一维数组的地址
对指针定义时需要注意的细节:
1当指针未初始化(没有指向时),将指针置为NULL,便于检查
2.当指针指向的空间保存数据时,确保该指针已被分配空间,未分配的用malloc分配
3 检查指针空间是否分配成功if(ptr == NULL) 未退出,malloc分配失败
{
exit(1);
}
4memset(ptr,'\0',sizeof(char)*100);将分配来的地址中的残留数据清空;
5free(ptr);使用完后释放空间;
6再将ptr置为NULL