标题:怎么读? 特别是返回值
只看楼主
陆苗
Rank: 2
等 级:论坛游民
帖 子:52
专家分:39
注 册:2016-5-31
结帖率:100%
已结贴  问题点数:30 回复次数:5 
怎么读? 特别是返回值
int strsearch(char* text, char *sch, int start)
{
    char *p = text + start;
    char *p1 = sch;

    while (*p){
        printf("%s\t%s\n", p, p1);
        if (mystrcmp(p, p1) == 0)
            return(start + p) - text;
        p++;
    }
    return -1;
//希望能解读以上,特别是return返回值这块不明白
搜索更多相关主题的帖子: return start 
2016-07-11 11:02
苯宝宝有毒
Rank: 2
等 级:论坛游民
帖 子:15
专家分:20
注 册:2016-5-7
得分:0 
没看懂楼主想干嘛,别断章取义啊!而且return后面要空格啊啊啊啊。表示太乱看不懂
2016-07-11 11:15
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
得分:10 
是啊,光看代码我觉得返回值应该是这个return(p - start) - text;才对。
2016-07-11 11:18
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:10 
这个相当于找字串(text)右边字串(sch)的起始位置,如果是这意思的话返回值不对。

[此贴子已经被作者于2016-7-11 11:50编辑过]

2016-07-11 11:41
lanke711
Rank: 9Rank: 9Rank: 9
来 自:流浪在天国之路
等 级:蜘蛛侠
威 望:7
帖 子:317
专家分:1437
注 册:2015-7-16
得分:0 
函数为int 类型.当while 循环执行时,if(strcmp)得到想要的结果,执行return(start + p) - text;,即返回(start + p) - text的结果
如果、strcmp没有得到想要的结果,return -1  

普通人之所以普通,是因为他们普遍有一个通病,那就是认为自己永远普通。
千夫所指,我亦坚持。就算被所有人误解,我也照样守护这一切。
我们总是觉得,这些灵魂的表情,傲慢自大,目中无人,其实,真正目中无人的是我们。它们傲慢的不过是表情,而我们傲慢的却是行为!
记得,是为了忘记!
只要想着有那么一天,我就能忍受现在的每一天!
灾难并不可怕,可怕的是心中没有了希望。
你以为我在天堂,其实我正在路上。
当你觉得自己走不到终点的时候,请不要放弃。或许你的对手也是这种感觉。
2016-07-11 11:46
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
得分:10 
int strsearch(char* text, char *sch, int start)  //粗粗一看,应该是查询相同的字符。
{
    char *p = text + start;        //从text[start]这个字符开始查起
    char *p1 = sch;

    while (*p){
        printf("%s\t%s\n", p, p1);  //这句估计是自己调试的时候加上去了,正常情况下应该不会加这句
        if (mystrcmp(p, p1) == 0)  //mystrcmp自己写的比较字符是否相同的函数,mystrcmp这个函数字符相同只能返回0,不相同随便返回什么数字都行。
            return(start + p) - text;  //这是返回相同字符所在的位置
        p++;
    }
    return -1;                  //查不到相同字符的时候返回-1。之所以用-1就因为0以上的整型都会和return(start + p) - text这句混淆起来。

[此贴子已经被作者于2016-7-11 12:30编辑过]

2016-07-11 12:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-466826-1-1.html




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

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