zoukankan      html  css  js  c++  java
  • Linux下的memset函数

    函数原型

      void *memset(void *s, int c, size_t n);

    函数功能

      将以s为首的存储空间前n字节空间全部替换为参数c指定的数据。

    返回值

      更新后的首地址s。

    头文件

      #include <string.h>

    为什么记录这个函数呢?它很好用啊有木有!以前初始化数组很麻烦有木有!用这个函数duang的一下就搞定了!废话少说,上测试代码。

    #include <memory.h>
    #include <stdio.h>
    
    void main( void )
    {
       char buffer[] = "This is a test of the memset function";
       printf( "Before: %s
    ", buffer );
       memset( buffer, '*', sizeof(buffer)-1 );    //这里buffer的大小-1是为了避免将字符串的结尾‘’也变成*
       printf( "After:  %s
    ", buffer );
    }

    很方便有木有?

    上面是字符串,下面再来一个整形数组的

    #include <memory.h>
    #include <stdio.h>
    
    void main( void )
    {
        int i = 0;
        int a[10];
        memset(a,0,sizeof(a));
        while(i < 10)
        {
            printf("a[%d] = %d
    ",i,a[i] );
            i++;
        }
    
    }

    更叼的,开辟一块共享内存,初始化

    #include <memory.h>
    #include <stdio.h>
    #include <sys/shm.h>
    #include <unistd.h>
    
    void main( void )
    {
        char *p_addr;
    
        int shmid;
    
        if((shmid = shmget(0x1234,5,666|IPC_CREAT))== -1)    //创建
            exit(1);
    
        p_addr = shmat(shmid,0,0);    //映射
        
        memset(p_addr,'',1024);    //初始化
    
    }

    That's all!如果有疑问或错误,欢迎指出。

  • 相关阅读:
    Kattis之旅——Factovisors
    Kattis之旅——Rational Arithmetic
    Kattis之旅——Number Sets
    Kattis之旅——Divisible Subsequences
    Kattis之旅——Prime Path
    Kattis之旅——Inverse Factorial
    Kattis之旅——Perfect Pth Powers
    Kattis之旅——Eight Queens
    hiho一下 第145周
    hiho一下 第144周
  • 原文地址:https://www.cnblogs.com/51qianrushi/p/4362303.html
Copyright © 2011-2022 走看看