zoukankan      html  css  js  c++  java
  • memory.h

    1.功能:提供内存操作函数

    2.函数:

    extern void *memchr(const void *buffer, int ch, size_t count);
    extern void *memcpy();
    extern void *memset();
    extern int memcmp();

    3.使用:

      (1).  memchr (const void *buffer,  int ch,  size_t count)

      功能:buffer数组指针,在指定数组的count个字符的字符串里查找ch 首次出现的位置。返回一个指针,指向ch 在字符串中首次出现的位置, 如果ch 没有在字符串中找到,返回NULL。 

      示例:

    char str[20]="hello,world.";
    if(!memchr(str,'w',strlen(str)))
        printf("find error");

      (2). memcpy(void *b1,void *b2,size_t n)

      功能:拷贝b2所指的内存内容前n个字节到b1所指的内存地址上,与<string.h>中的strcpy()不同的是,memcpy()会完整的复制n个字节,不会因为遇到字符串结束''而结束 .

      示例:

    s1="s1",s2="s2";
    memcpy(s1, s2, strlen(s2));将s2内容拷贝到S1;

      (3). memset(void *b1,int ch,size_t n )

      功能:作用是在一段内存块中(b1所指)填充某个给定的值(ch),它对较大的结构体或数组进行清零操作的一种最快方法。

      示例:

    char s[20];
    memset(s, 0, sizeof(char)*20);

      (4). memcmp(void *b1,void *b2,size_t count)

      功能:比较b1和b2所指字符串中指定的前count个字符区域。 

      比较:

        1.strcmp:strcmp比较的字符串;strcmp需要时刻检查是否遇到了字符串结束的 字符;strcmp在比较四字节是逐字节比较;

        2.memcmp:memcmp比较的是内存块,memcmp无须检查'';memcmp用了字符串比较指令,在字符串较大的情况下,字符串比较指令比用逐字节比较好。

      示例:

    s1="hello.", s2="helli.";
    memcmp(s1, s2, strlen(s1));
  • 相关阅读:
    对png空白部分取消button事件教程
    Flash Builder4.6破解方案(绝对有效)
    网页程序Flex动态嵌入字体
    老虎机等转动图片思路
    我认为最佳的新手引导制作办法
    26
    sql server 2005建立数据库,表,约束,账户密码,权限,基本查询删除语句
    ASP.NET入门教程:ASP.NET和ASP区别
    .net面试题及答案(一)(转)
    ASP.NET入门教程:认识ASP.NET
  • 原文地址:https://www.cnblogs.com/astonc/p/10666318.html
Copyright © 2011-2022 走看看