• 【转】C语言mem.h中的函数介绍


    函数名称:     memccpy
    函数原型:     void *memccpy(void *dest, const void *src, int c, size_t n)
    函数功能:     字符串拷贝,到指定长度或遇到指定字符时停止拷贝
    函数返回:
    参数说明:     src-源字符串指针,c-中止拷贝检查字符,n-长度,dest-拷贝底目的字符串指针
    所属文件:     string.h,mem.h

    #include string.h
    #include stdio.h
    int main()
    {
        char *src="This is the source string";
        char dest[50];
        char *ptr;
        ptr=memccpy(dest,src,'c',strlen(src));
        if (ptr)
        {
        *ptr='/0';
            printf("The character was found:%s",dest);
        }
        else
        printf("The character wasn't found");
        return 0;
    }


    @函数名称:     memchr
    函数原型:     void *memchr(const void *s, int c, size_t n)
    函数功能:     在字符串s中前n个字符中寻找某个字符c的位置
    函数返回:     返回c的位置指针,返回NULL时表示未找到
    参数说明:     s-要搜索的字符串,c-要寻找的字符,n-指定长度
    所属文件:     string.h,mem.h

    #include string.h
    #include stdio.h
    int main()
    {
        char str[17];
        char *ptr;
        strcpy(str,"This is a string");
        ptr=memchr(str,'r',strlen(str));
        if(ptr)
        printf("The character 'r' is at position:%d",ptr-str);
        else
        printf("The character was not found");
        return 0;
    }

    @函数名称:     memcmp
    函数原型:     int memcmp(const void *s1, const void *s2, size_t n)
    函数功能:     按字典顺序对字符串s1,s2比较,并只比较前n个字符
    函数返回:     返回数值表示比较结果
    参数说明:     s1,s2-要比较的字符串,n-比较的长度
    所属文件:     string.h,mem.h

    #include stdio.h
    #include string.h

    int main()
      {
        auto char buffer[80];

        strcpy(buffer,"world");
        if( memcmp(buffer,"would ",6)<0){
          printf("Less than/n");
        }
        return 0;
      }


    @函数名称:     memicmp
    函数原型:     int memicmp(const void *s1, const void *s2, size_t n)
    函数功能:     按字典顺序、不考虑字母大小写对字符串s1,s2比较,并只比较前n个字符
    函数返回:     返回数值表示比较结果
    参数说明:     s1,s2-要比较的字符串,n-比较的长度
    所属文件:     string.h,mem.h

    #include stdio.h
    #include string.h
    int main()
    {
        char *buf1 = "ABCDE123";
        char *buf2 = "abcde456";
        int stat;
        stat = memicmp(buf1, buf2, 5);
        printf("The strings to position 5 are ");
        if(stat)
            printf("not");
        printf("the same");
        return 0;
    }

    @函数名称:     memcpy
    函数原型:     void *memcpy(void *dest, const void *src, size_t n)
    函数功能:     字符串拷贝
    函数返回:     指向dest的指针
    参数说明:     src-源字符串,n-拷贝的最大长度
    所属文件:     string.h,mem.h

    #include stdio.h
    #include string.h
    int main()
    {
        char src[] = "******************************";
        char dest[] = "abcdefghijlkmnopqrstuvwxyz0123456709";
        char *ptr;
        printf("destination before memcpy: %s",dest);
        ptr=memcpy(dest,src,strlen(src));
        if(ptr)
            printf("destination after memcpy:%s",dest);
        else
            printf("memcpy failed");
        return 0;
    }

    @函数名称:     memmove
    函数原型:     void *memmove(void *dest, const void *src, size_t n)
    函数功能:     字符串拷贝
    函数返回:     指向dest的指针
    参数说明:     src-源字符串,n-拷贝的最大长度
    所属文件:     string.h,mem.h

    #include string.h
    #include stdio.h
    int main()
    {
        char dest[40]="abcdefghijklmnopqrstuvwxyz0123456789";
        printf("destination prior to memmove:%s/n",dest);
        memmove(dest+1,dest,35);
        printf("destination after memmove:%s",dest);
        return 0;
    }


    @函数名称:     memset
    函数原型:     void *memset(void *s, int c, size_t n)
    函数功能:     字符串中的n个字节内容设置为c
    函数返回:
    参数说明:     s-要设置的字符串,c-设置的内容,n-长度
    所属文件:     string.h,mem.h
    #include string.h
    #include stdio.h
    #include <mem.h>
    int main()
    {
        char buffer[] = "Hello world";
        printf("Buffer before memset:%s",buffer);
        memset(buffer,'*',strlen(buffer)-1);
        printf("Buffer after memset:%s",buffer);
        return 0;
    }

  • 相关阅读:
    正则获取HTML代码中img的src地址
    System.Diagnostics.Process 启动进程资源或调用外部的命令的使用
    按位取反运算符~
    Nhibernate Query By Criteria 条件查询
    Unit Test测试框架中的测试的执行顺序
    Jquery自定义插件之$.extend()、$.fn和$.fn.extend()
    如何采集QQ群中所有成员QQ号码
    Sql server使用Merge关键字做插入或更新操作
    c#类库和可移值类库的区别
    VS代码管理插件AnkhSvn
  • 原文地址:https://www.cnblogs.com/codecamel/p/4729219.html
Copyright © 2020-2023  润新知