c语言 如何使用用指针变量a输出字符串banana?

 我来答
匿名用户
2018-03-20
展开全部
void main()
{
 char *list[]={"apple","banana"};
 char **a;
 a = list;
 printf("%s",*(a+1));
 getchar();
}
追问
为什么要用二级指针?
追答

二级指针是指向指针的指针,看个例子

C是"一段内容",比如你用malloc或者new分配了一块内存,然后塞进去"一段内容",那就是C了。C的起始地址是0x00000008。

B是一个指针变量,其中存放着C的地址,但是B也要占空间的啊,所以B也有地址,B的起始地址是0x00000004,但是B内存中存放的是C的地址,所以B里面的内容就是0x00000008。

  • B= 0x00000008;  //B的内容   

  • *B = "一段内容";  //B解引用,也就是B指针指向的C的值 

  • *A = B= 0x00000008;  //A解引用也就是B的内容   

  • **A = *B = "一段内容";  //B解引用,也就是B指针指向的C的值 

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式