专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »C 教程 » 指向函数的指针:指向指针的指针使用 »正文

指向函数的指针:指向指针的指针使用

来源: 发布时间:星期四, 2009年2月12日 浏览:124次 评论:0


    存储示意如图所示a来说若把首地址即名赋给指针变量p1p1就指向a各元素用p1表示为*(p1+i)也可以简化为*p1+i表示
如果继续作将p3=&p1则将p1地址传递给指针变量p3*p3就是p1用p3来表示各元素只需要将用p1表示元素*(p1+i)中p1换成*p3即可表示为*(*p3+i)

同样对 2维b来说b[i]表示第i行首地址将其传递给指针变量p2使其指向该行
该行元素用p2表示为*(p2+i)若作p3=&p2则表示p3指向p2用p3表示 2维第i行元素为:*(*p3+i)这和表示完全相同
运行:

[例6-28]利用指向指针指针变量对 2维访问
#<stdio.h>
#<stdlib.h>

{
 i;
charc[16]={\"clanguage\",\"fox\",\"computer\",\"homepage\"};
/* 2维*/
 char *cp={c[0],c[1],c[2],c[3]};指/*针*/
 char **cpp;/*指向指针指针变量*/
cpp=cp;/*将指针首地址传递给指向指针指针变量*/
for(i=0;i<4;i)/*按行输出串*/
prf(\"%s\\n\",*cpp);
prf(\"-----------\\n\");
for(i=0;i<4;i)/*按行输出串*/
{
cpp=&cp[i];
prf(\"%s\\n\",*cpp);
}
}

    中需要注意执行cpp=cp是将指针首地址传递给双重指针所以*(cpp+i)表示第i行首地址而不是cpp+i设计时定分清
 
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: