zoukankan      html  css  js  c++  java
  • C语言初始化数组的三种方法

    使用 memset() 函数

    #define SIZE 100
    
    // eg1. 初始化一个大小为 100 的字符数组
    // memset 执行后的效果是将 test 数组的元素全部初始化为 0
    void func1()
    {
        char test[SIZE];
        memset(test, 0, SIZE);
    }
    
    // eg2. 初始化一个 int 类型的数组
    void func2()
    {
        int test1[SIZE];
        memset(test1, 0, sizeof(int) * SIZE); // 这里的 SIZE 是数组大小, 需要多少替换下就可以了
    }
    

    C 语言库函数 - memset()

    使用 memset() 需要引入头文件 #include <string.h>

    描述

    C 库函数 void *memset(void *str, int c, size_t n) 复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符。

    声明

    void *memset(void *str, int c, size_t n)
    

    参数

    • str -- 指向要填充的内存块。
    • c -- 要被设置的值。该值以 int 形式传递,但是函数在填充内存块时是使用该值的无符号字符形式。
    • n -- 要被设置为该值的字符数。

    返回值

    该值返回一个指向存储区 str 的指针。

    使用 {0} 初始化

    这种方法可能存在兼容性问题. 效率和 memset 类似, 较高.

    #define SIZE 100
    
    void func()
    {
        char test[SIZE] = {0};
    }
    

    使用 for 循环

    效率最低.

    #define SIZE 100
    
    void func()
    {
        int i = 0;
        char test[SIZE];
        for (i = 0; i < SIZE; i++)
        {
            test[i] = 0;
        }
    }
    

    参考: https://www.cnblogs.com/fnlingnzb-learner/p/8057257.html

  • 相关阅读:
    布隆过滤器
    django-redis 和 vue 实现的购物车
    富文本编辑器
    django 和 七牛云 交互
    django 提供的加密算法
    DRF mixins 的常用方法
    Python笔记5(作业)
    Python笔记5(random&sys&os模块)
    Python笔记5(collections模块)
    Python笔记5(时间模块)
  • 原文地址:https://www.cnblogs.com/fanlumaster/p/14000163.html
Copyright © 2011-2022 走看看