| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1141 人关注过本帖
标题:请教······
只看楼主 加入收藏
checoly
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2004-9-11
收藏
 问题点数:0 回复次数:4 
请教······
请教······

#include<iostream> using namespace std; int fun(char *s); int main( ) { count<<fun("Hello"); return 0; } int fun(char *s) { char *t=s; while(*t!='\0')t++; return(t-s); }

输出结果系5

点解吾系用asc码减既??

搜索更多相关主题的帖子: count return include asc fun 
2004-09-11 12:38
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 

甘减是地址减,唔是ASCII码减,要用ASCII码减就在头加(int)显式转换char类型。

2004-09-11 13:46
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
int fun(char *s)  //传地址入来
{
 char *t=s;  //地址赋值
 while(*t!='\0')
  t++;  //地址推后,没次推一位
 return(t-s);  //s的地址在t前5位
}
2004-09-11 13:47
kuangjingbo
Rank: 1
等 级:新手上路
帖 子:312
专家分:0
注 册:2004-4-24
收藏
得分:0 

输出的不正好吗?

串的长度确实是5


永不放弃!
2004-09-11 14:26
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 
不错

2004-09-11 16:57
快速回复:请教······
数据加载中...
 
   



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

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