• 设为首页
  • 收藏本站
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    查看: 1753|回复: 5

    [源码共享] Metrowerks CodeWarrior编译通过的c库函数,解决自带库太大的弊

    [复制链接]

    该用户从未签到

    3

    主题

    184

    回帖

    0

    积分

    二级逆天

    积分
    0

    终身成就奖

    发表于 2018-11-28 08:59:48 | 显示全部楼层 |阅读模式
    void *  memcpy (void * dst, const void * src,size_t count)
    {
            void * ret = dst;//可支持链式编程,一个函数完成两个功能。
            while (count--)
            {
                    *(char *)dst = *(char *)src;
                    dst = (char *)dst + 1;
                    src = (char *)src + 1;
            }

            return(ret);
    }
    void * memset(void *dst, int val,size_t count)
    {
    //把val传给*dst时两个变量类型要相同,需要用到强制类型转换

        //assert(dst);//这里需要检验dst的有效性
        char* ret=(char*)dst;
        while (count--)
        {
            *ret++ = (char)val;
        }
        return dst;
    }

    char *  strstr(const char *str1, const char *str2)
    {
        char *cp = (char *)str1;
        char *s1, *s2;

        if (!*str2)
            return((char *)str1);

        while (*cp)
        {
            s1 = cp;
            s2 = (char *)str2;

            while (*s2 && !(*s1 - *s2))
                s1++, s2++;

            if (!*s2)
                return(cp);

            cp++;
        }

        return(NULL);
    }

    char * strncpy( char * dest, const char * source, unsigned long count )

    {

       char *p = dest;

       while (count && (*p++ = *source++)) count--;

       while(count--)

         *p++ = '/0';

    return(dest);

    }
    size_t strlen(const char * str )

    {

       const char *p = str;

        while( *p++ ) ;

        return( (int)(p - str - 1) );

    }
    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 10:27
  • 签到天数: 132 天

    [LV.7]常住居民III

    54

    主题

    3985

    回帖

    2244

    积分

    二级逆天

    积分
    2244

    社区居民终身成就奖特殊贡献奖

    QQ
    发表于 2018-11-28 09:06:12 | 显示全部楼层
    VERY GOOD!
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    204

    回帖

    0

    积分

    一级逆天

    积分
    0

    终身成就奖

    QQ
    发表于 2018-11-28 09:54:02 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-6-14 16:03
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    0

    主题

    1万

    回帖

    7618

    积分

    二级逆天

    积分
    7618

    终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

    QQ
    发表于 2018-11-28 17:48:20 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    29

    主题

    1427

    回帖

    0

    积分

    二级逆天

    积分
    0

    终身成就奖特殊贡献奖原创先锋奖

    发表于 2022-11-18 08:46:28 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 10:01
  • 签到天数: 124 天

    [LV.7]常住居民III

    1

    主题

    3922

    回帖

    2287

    积分

    二级逆天

    积分
    2287

    终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

    发表于 2022-12-8 09:51:14 | 显示全部楼层
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    公告:服务器刚移机,
    大家请不要下载东西。
    会下载失败


    QQ 手机版 小黑屋 监管台 遇到问题请联系QQ1308068381 逆天PCB论坛

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表