找网络公司做网站需要注意的,邢台专业做wap网站,网站网站建设设计公司,互联网创新创业大赛一、多级指针
把一个指向指针变量的指针变量#xff0c;称为多级指针变量对于指向处理数据的指针变量称为一级指针变量指向一级指针变量的指针变量称为二级指针变量
1、二级指针变量的说明形式 数据类型 ** 指针名 #xff1b;
一张图理解二级指针 2、多…一、多级指针
把一个指向指针变量的指针变量称为多级指针变量对于指向处理数据的指针变量称为一级指针变量指向一级指针变量的指针变量称为二级指针变量
1、二级指针变量的说明形式 数据类型 ** 指针名
一张图理解二级指针 2、多级指针的运算 指针变量加1是向地址大的方向移动一个目标数据多级指针运算也是以其目标变量为单位进行偏移 int **pp1移动一个int *变量所占的内存空间int ***pp1移动一个int **所占的内存空间
3、指针数组 指针数组也可以用另外一个指针来处理
有一个一维字符指针数组ps[5]
char *ps[5] { Beijing city,
......
London city } ;
定义另一个指针变量pps并且把指针数组的首地址赋予指针pps
char *ps[5]{......}; char ** pps ps; 举个栗子
#includestdio.h
#includestring.hint main()
{char* a[] { work,at,alibaba };char** pa a;pa;printf(%s\n, *pa);return 0;
} 二、void指针及用法
1、万能指针
万能指针其实就是void *类型的指针而void *指针一般被称为通用指针或叫泛指针。它是C语言关于纯粹地址的一种约定。当某个指针是void型指针时所指向的对象不属于任何类型。因为void指针不属于任何类型不可以对其进行算术运算比如自增编译器不知道其自增需要增加多少。
2、void指针 一般形式为 void * 指针变量名称 ; 对于void指针在没有强制类型转换之前不能进行任何指针的算术运算
3、万能指针使用规则
使用前必须被初始化解引用过程必须强制转换
三、const变量、const指针
1、const变量
常量化变量的值一般说明形式如下 const 数据类型 变量名 [表达式] ;
常量化变量是为了使得变量的值不能修改变量有const修饰时若想用指针间接访问变量指针也要有const修饰。const放在指针声明的什么位置呢 就近原则const修饰谁谁不能变
2、const修饰指针 1常量化指针目标表达式
一般说明形式如下 const 数据类型 * 指针变量名称[ 指针运算表达式] ;
常量化指针目标是限制通过指针改变其目标的数值 但指针变量存储的地址值可以修改
2常量化指针变量及其目标表达式 一般说明形式如下 const 数据类型 * const 指针变量名 指针运算表达式 ;
常量化指针变量及其目标表达式使得既不可以修改指针变量的地址也不可以通过*指针变量名称修改指针所指向变量的值
四、main函数的参数 int main(int argc, const char *argv[]) argc: 命令行参数的个数argv为保存命令行参数的字符串指针 1其中第0个参数是程序的全名以后的参数为命令行后面跟的用户输入的参数 2argv参数是字符串指针数组其各元素值为命令行中各字符串的首地址。 3指针数组的长度即为参数个数argc。