标题:请教一下为什么以下两个函数,第二个可以,第一个却不行。
取消只看楼主
luoj75
Rank: 2
等 级:论坛游民
帖 子:17
专家分:55
注 册:2016-11-28
结帖率:100%
已结贴  问题点数:8 回复次数:2 
请教一下为什么以下两个函数,第二个可以,第一个却不行。
//////第一个///////
char * prefix(char* s1, char* s2)
{ char *P=  (char*)malloc(sizeof(char) * 51);
 int count=0;
  for(int i=0;i<sizeof(s1);i++){
      if(*(s1+i)==*(s2+i)){count++;
      }
      else{break;
      }
      
  }
  for(int j=0;j<count;j++){
      *(P+j)=*(s1+j);
  }
  *p='\0';
  return p;
}

/////////////第二个////
 char *prefix(char *s1, char *s2)
{
    char *sb;
    sb=(char*)malloc(sizeof(char) * 51);
    char *p=sb;
    while(*s1==*s2){
        *p=*s1;
        p++,s1++,s2++;
    }
    *p='\0';
    return sb;
}
搜索更多相关主题的帖子: return count 
2016-12-05 22:05
luoj75
Rank: 2
等 级:论坛游民
帖 子:17
专家分:55
注 册:2016-11-28
得分:0 
回复 2楼 吹水佬
例:
s1=abcsd
s2=abklgdfv
都是字符串,求共同前缀。
O(∩_∩)O谢谢指教
2016-12-05 23:01
luoj75
Rank: 2
等 级:论坛游民
帖 子:17
专家分:55
注 册:2016-11-28
得分:0 
回复 5楼 吹水佬
明白了,O(∩_∩)O谢谢dalao
2016-12-05 23:28



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




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

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