p280上的关于二级指针与指针数组的结合

给出代码:

#include<stdio.h>
int main(void)
{
 char *name[]={"Follow me","BASIC","Great Wall","FORTRAN","computer design"};//声明一个指针数组
 char **p;//声明一个指向指针的指针
 int i;
 for(i=0;i<5;i++)
 {
  p=name+i;//首先把存放地址的一块内存区域都叫做指针,(如果不告知name是一个指针数组)则在name
  	   //里面的每一个元素都存放的是对应的字符串的首地址,则p指向这些地址而不是一个确定的
  	   //变量那么p就是指向了指针,就应该把p声明为**型指针
  printf("%s\n",*p);//*p取的是name【i】中的值,也就是对应字符串的首元素的地址,如果这里写的是
  		    //**p,那么取得就会直接是首元素
 }
 return 0;
 } 

plus:如果指针里面放的是确定变量的地址,就称为一级简址,如果放的是指向另一块区域的地址就称为二级简址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值