指针数组与数组指针 | 指针变量与整形变量;函数指针;二级指针

指针数组

int * p[2]
指针数组,顾名思义,指针的数组,是个数组,存放的是数据;
例如execv()历程中的一行代码: char * argv[] = {“hello”,NULL};
定义了一个存放 char * 类型元素的数组argv,并进行初始化;
argv[0] = 0x1234,是个指针,指向的是“hello”的首地址;
*argv[0] = “hello”;
argv[1]是个空指针,故而为NULL;
如果是 char *argc = “hello”;// 此为char型的指针,不是char型的变量
argc是个指针, * argc 就可以按照数据类型赋值,没啥了不起的!
argc是“h”的地址, *argc = “hello”
b = argc++ ; 后就指向“e”的地址, * b = “ello”
putchar(*argc);// 单个字符打印,内容为 “e”

数组指针

int (*p)[2]
数组指针,顾名思义,数组的指针,是个指针,指向一个n行两列的数组;
用法如下:

   //定义一个执行n行2列的数组指针
   int (*p)[2];
   //定义一个三行两列的二维数组,并初始化
  int b[3][2] = {{1, 2}, {3, 4}, {5, 6}};
  //将数组b的首地址付给p
   p = b;
   //遍历数组b内容
    for(int i = 0; i < 3; i++) {
     for(int j = 0; j < 2; j++){
     cout << p[i][j];
      }
  }

结束

此篇小帆用于笔记整理,内容仅供参考,如有错误,望大佬指点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值