|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 数组问题 地址差怎么计算的
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
510
人关注过本帖
标题:
数组问题 地址差怎么计算的
只看楼主
加入收藏
孤独一生
来 自:四川达县
等 级:
论坛游民
帖 子:45
专家分:55
注 册:2013-4-1
结帖率:
56.25%
楼主
收藏
已结贴
√
问题点数:10 回复次数:4
数组问题 地址差怎么计算的
char ch='e',*ptr;
char s1(10)="abc edcf";//如果这里的数组保存的字符串是abc decf ,ch字符变量是e
int n;
ptr=strchar(s1,ch);//查找到了字符返回的值是它的位置还是什么,比如e在数组里面被找到了返回的值是不是6
n=ptr-s1;//计算出该字符的位置 怎么计算的 原理详细,ptr-s1怎么算的
搜索更多相关主题的帖子:
字符串
2014-07-26 07:29
举报帖子
使用道具
赠送鲜花
pinglideyu
来 自:武汉工程大学
等 级:
论坛游侠
威 望:
1
帖 子:735
专家分:140
注 册:2007-1-7
第
2
楼
收藏
得分:4
数组的内容是连续的
~~我的明天我知道~~
2014-07-26 11:15
举报帖子
使用道具
赠送鲜花
a123sun3
等 级:
新手上路
帖 子:2
专家分:4
注 册:2014-7-25
第
3
楼
收藏
得分:4
1.strchr返回值:找出在字符串 s1 中与 ch 相同的字符 X ,返回 X 在内存中的位置(即ptr)。
2.返回值不是6,而是一个很大的数。
3.s1 可以作为该字符串在内存中的首地址(第一个字符所在的位置), 而字符串的内容(即字符)在内存中是连续的,所以 ptr-s1 就是ch在s1中的位置。
另:ptr-s1 应该是 5,因为数组的第一个位置是从 0 开始的。
2014-07-26 11:36
举报帖子
使用道具
赠送鲜花
a123sun3
等 级:
新手上路
帖 子:2
专家分:4
注 册:2014-7-25
第
4
楼
收藏
得分:0
[
本帖最后由 a123sun3 于 2014-7-26 11:57 编辑
]
2014-07-26 11:39
举报帖子
使用道具
赠送鲜花
j521887
等 级:
论坛游民
帖 子:26
专家分:42
注 册:2014-7-21
第
5
楼
收藏
得分:4
就是返回的目的地址减去首地址,不过我觉得其差应该是n=qi-str+1;zhiyu
2014-07-31 13:33
举报帖子
使用道具
赠送鲜花
5
1/1页
1
快速回复:
数组问题 地址差怎么计算的
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.032508 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved