| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 664 人关注过本帖
标题:一些字符串处理函数(可能没有盖茨写的好)
只看楼主 加入收藏
young
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:223
专家分:160
注 册:2004-9-5
结帖率:100%
收藏
 问题点数:0 回复次数:3 
一些字符串处理函数(可能没有盖茨写的好)

/****************************************************************************/ /* strlen */ /****************************************************************************/ size_t strlen(const char *s) { const char *r = s - 1;

while (*++r); return r - s; }

/****************************************************************************/ /* strcpy */ /****************************************************************************/ char *strcpy(char *s1, const char *s2) { char *result = s1;

while (*s1++ = *s2++); return result; }

/****************************************************************************/ /* strncpy */ /****************************************************************************/ char *strncpy(char *s1, const char *s2, size_t n) { char *result = s1;

if (n == 0) return result; while ((*s1++ = *s2++) && --n != 0); if (n > 1) { --n; do *s1++ = 0; while (--n); } return result; }

/****************************************************************************/ /* strcat */ /****************************************************************************/ char *strcat(char *s1, const char *s2) { char *result = s1;

while (*s1++); --s1; while (*s1++ = *s2++); return result; }

/****************************************************************************/ /* strncat */ /****************************************************************************/ char *strncat(char *s1, const char *s2, size_t n) { char *result = s1;

while (*s1++); --s1; while (n-- != 0) if (!(*s1++ = *s2++)) return result; *s1 = 0; return result; }

/****************************************************************************/ /* strchr */ /****************************************************************************/ char *strchr(const char *s, int c) { do if (*s == c) return (char *)s; while (*s++); return NULL; }

/****************************************************************************/ /* strrchr */ /****************************************************************************/ char *strrchr(const char *s, int c) { char *result = NULL; do if (*s == c) result = (char *)s; while (*s++); return(result); }

/****************************************************************************/ /* memchr */ /****************************************************************************/ void *memchr(const void *s, int c, size_t n) { const unsigned char *st = (unsigned char *)s; unsigned char ch = c;

while (n-- != 0) if (*st++ == ch) { return (void *)--st; } return NULL; }

/****************************************************************************/ /* memset */ /****************************************************************************/ void *memset(void *s, int c, size_t n) { unsigned char *st = (unsigned char *)s; unsigned char ch = c;

while (n-- > 0) *st++ = ch; return s; }

搜索更多相关主题的帖子: 盖茨 函数 字符 
2005-03-26 15:51
形影随从
Rank: 1
等 级:新手上路
威 望:1
帖 子:188
专家分:0
注 册:2005-3-15
收藏
得分:0 
晕!也写一下具体点的功能了??

2005-03-26 16:29
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
呵呵,楼上的,你应该好好看看这些源码,自己写一个试试,再比较一下差距。

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2005-03-26 17:08
他们
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2005-3-22
收藏
得分:0 
厉害!!!!

2005-03-26 20:33
快速回复:一些字符串处理函数(可能没有盖茨写的好)
数据加载中...
 
   



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

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