C和指针之多维数组一行存满后会轮到下一行

举报
chenyu 发表于 2021/07/27 00:07:59 2021/07/27
【摘要】 1、问题 比如二位数组名赋值给一个指针,指针在递增,超过这个行的最后一列后会得到怎么样结果。     2、代码举例 #include <stdio.h> int main(){ int a[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; int *p = NULL; p = &...

1、问题

比如二位数组名赋值给一个指针,指针在递增,超过这个行的最后一列后会得到怎么样结果。

 

 

2、代码举例


   
  1. #include <stdio.h>
  2. int main()
  3. {
  4. int a[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
  5. int *p = NULL;
  6. p = &a[1][1];
  7. printf("first value is %d\n", *p);
  8. printf("second value is %d\n", *++p);
  9. printf("third value is %d\n", *++p);
  10. return 0;
  11. }

 
 
 


3、运行结果


   
  1. 1111deMacBook-Pro:dabian a1111$ vim more_array.c
  2. 1111deMacBook-Pro:dabian a1111$ gcc -g more_array.c -o more_array
  3. 1111deMacBook-Pro:dabian a1111$ ./more_array
  4. first value is 5
  5. second value is 6
  6. third value is 7

 
 

文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。

原文链接:chenyu.blog.csdn.net/article/details/78509762

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。