| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2058 人关注过本帖, 1 人收藏
标题:请教问题,为何打印出Beijing?
只看楼主 加入收藏
邹阳
Rank: 6Rank: 6
等 级:侠之大者
威 望:4
帖 子:124
专家分:402
注 册:2015-10-8
结帖率:73.68%
收藏(1)
已结贴  问题点数:20 回复次数:11 
请教问题,为何打印出Beijing?
  最近在做些C的练习题,发现一道有关指针的基础类题目,知道打印出的是“Beijing”,但忘记是如何实现的了,请教下。
#include<stdio.h>
void main()
{
    char str[][8]={"Hello","Beijing"},*p=str[0];
    printf("%s\n",p+8);
}
搜索更多相关主题的帖子: 练习题 如何 
2017-03-25 15:19
yanzy
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:104
专家分:372
注 册:2017-2-7
收藏
得分:10 
图片附件: 游客没有浏览图片的权限,请 登录注册
2017-03-25 15:35
zhuaaaaaa
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2017-3-25
收藏
得分:0 
回复 2楼 yanzy
我记得哪儿好像有+1就行的,+1 +8这怎么区分啊。
2017-03-25 15:51
yanzy
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:104
专家分:372
注 册:2017-2-7
收藏
得分:0 
回复 3楼 zhuaaaaaa
*p=str[0]; 等价于 *p=str[0][0],同样等价于 *p=str,即指向首地址,在这里根据前文是二维字符串数组,每一维只有8个成员,即内存中分配8个连续的地址,那么第九个地址(p+8)就是第二维的首地址
2017-03-25 16:09
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:10 
以下是引用zhuaaaaaa在2017-3-25 15:51:47的发言:

我记得哪儿好像有+1就行的,+1 +8这怎么区分啊。

想是这样:
#include<stdio.h>
void main()
{
    char str[][8]={"Hello","Beijing"};
    char (*p)[8]=str;
    printf("%s\n", p);
    printf("%s\n", p+1);
}
2017-03-25 16:11
邹阳
Rank: 6Rank: 6
等 级:侠之大者
威 望:4
帖 子:124
专家分:402
注 册:2015-10-8
收藏
得分:0 
回复 2楼 yanzy
明白了,拍照解答问题,感谢。

I'm a new comer
2017-03-25 16:33
邹阳
Rank: 6Rank: 6
等 级:侠之大者
威 望:4
帖 子:124
专家分:402
注 册:2015-10-8
收藏
得分:0 
回复 5楼 吹水佬
好的,明白了,谢谢。

I'm a new comer
2017-03-25 16:34
张乾
Rank: 2
等 级:论坛游民
帖 子:6
专家分:16
注 册:2017-2-22
收藏
得分:0 
学习了
2017-03-25 16:51
zhuaaaaaa
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2017-3-25
收藏
得分:0 
回复 5楼 吹水佬
还是不大明白为什么这样就可以了,具体有什么区别吗
2017-03-25 17:04
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
回复 9楼 zhuaaaaaa
是不是这样就好理解了呢
程序代码:
#include<stdio.h>
void main()
{
    char* str[]={"Hello","Beijing"};
    printf("%s\n",str[1]);
} 


 

DO IT YOURSELF !
2017-03-25 20:36
快速回复:请教问题,为何打印出Beijing?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019472 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved