天天看点

C语言中的指针数组和数组指针

  可以将 *string看成数组 a[] 下的a,即指针是指向数组的首地址的;

  指针数组是数组元素为指针的数组(例如 int *p[3],定义了p[0],p[1],p[2]三个指针),其本质为数组。

  指针数组( * stings[] )

  c中指针可以作数组使用比如:

  数组不一定能作指针用比如:

  这时会报错,你不能改变数组的地址;

  但是可以这样使用:

  在指针数组中如下代码:

  这里创建了一个指针数组strings,它的每个数组元素相当于一个指针变量,都可以指向一个整形变量,其值为地址。也就是说strings数组中每个元素存放的是字符串的地址。

  这里可以将指针数组看成 * (strings[1])之类,后面的那部分 strings[1] 看成指针变量 p.

  数组指针( (*strings)[] )

继续阅读