| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2299 人关注过本帖
标题:strcspn函数
只看楼主 加入收藏
jingzitakk66
Rank: 1
等 级:新手上路
帖 子:198
专家分:0
注 册:2009-5-1
结帖率:98.68%
收藏
已结贴  问题点数:20 回复次数:15 
strcspn函数
以下的程序结果为什么为2,按理说应该为了1 啊,当我定义char *a="aa123",输出为2是正确的啊,真废解!

#include"stdio.h"
#include"string.h"

main()
{

    char *a="al12abc345678";
    char *b="12345678";
    printf("%d",strcspn(a,b));

}

函数原形 #include <string.h>
  size_t strcspn( const char *str1, const char *str2 );
功能:函数返回str1 开头连续n个字符都不含字符串str2内字符的字符数。
搜索更多相关主题的帖子: strcspn 
2009-08-11 23:03
soky
Rank: 4
等 级:业余侠客
帖 子:126
专家分:228
注 册:2009-7-13
收藏
得分:0 
这里必须用指针么?你传如函数的可是指针地址呀
2009-08-11 23:08
jingzitakk66
Rank: 1
等 级:新手上路
帖 子:198
专家分:0
注 册:2009-5-1
收藏
得分:0 
回复 2楼 soky

指针就是一个地址啊,没错的
2009-08-11 23:14
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
回复 楼主 jingzitakk66


        是应该为 2 呀,一个 a,一个 l 嘛。
2009-08-11 23:18
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
收藏
得分:0 
是没错的,1是正确的,
strcspn函数反回的是地址。0也算一个。

努力—前进—变老—退休—入土
2009-08-11 23:21
soky
Rank: 4
等 级:业余侠客
帖 子:126
专家分:228
注 册:2009-7-13
收藏
得分:0 
应该是2,也就是在*a中的1的下标
原型:extern int strcspn(char *s1,char *s2);
        
  用法:#include <string.h>
  
  功能:在字符串s1中搜寻s2中所出现的字符。
  
  说明:返回第一个出现的字符在s1中的下标值,亦即在s1中出现而s2中没有出现的子串的长度。


[ 本帖最后由 soky 于 2009-8-11 23:35 编辑 ]
2009-08-11 23:33
jingzitakk66
Rank: 1
等 级:新手上路
帖 子:198
专家分:0
注 册:2009-5-1
收藏
得分:0 
回复 4楼 广陵绝唱

版主,请帮我解释下面的返回值    (我真的晕了,这函数到底是什么意思,为什么返回结果总是出我意料)
 char *a="a1123";
    char *b="12345678";
    printf("%d",strcspn(a,b));
返回 1
char *a="al12abc345678";
    char *b="12345678";
    printf("%d",strcspn(a,b));
返回 2
char *a="xxxabc345678";
    char *b="12345678";
    printf("%d",strcspn(a,b));
返回6
2009-08-12 00:09
jingzitakk66
Rank: 1
等 级:新手上路
帖 子:198
专家分:0
注 册:2009-5-1
收藏
得分:0 
回复 5楼 UserYuH

问题是返回2啊
2009-08-12 00:10
soky
Rank: 4
等 级:业余侠客
帖 子:126
专家分:228
注 册:2009-7-13
收藏
得分:0 
回复 7楼 jingzitakk66
原型:extern int strcspn(char *s1,char *s2);
        
  用法:#include <string.h>
  
  功能:在字符串s1中搜寻s2中所出现的字符。
  
  说明:返回第一个出现的字符在s1中的下标值,亦即在s1中出现而s2中没有出现的子串的长度。


注意看说明
2009-08-12 00:12
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
收藏
得分:20 


001.JPG (64.53 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册

努力—前进—变老—退休—入土
2009-08-12 00:21
快速回复:strcspn函数
数据加载中...
 
   



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

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