C语言第五十八弹----介绍memset内存函数

介绍C语言内存函数memset

memset是C语言标准库中的一个函数,用于将一块内存区域的数据设置为指定的值。

源代码

c 复制代码
void* memset(void* ptr, int value, size_t num);

ptr是指向要设置的内存区域的指针,value是要设置的值(以int形式表示),num是要设置的字节数。

memset函数将指定的内存区域的每个字节都设置为指定的值。它常用于初始化内存、重置内存或将内存区域全部填充为特定的值。

使用实例

c 复制代码
#include <stdio.h>
#include <string.h>

int main() {
    char str[10];

    // 使用memset将str数组填充为字符'A'
    memset(str, 'A', sizeof(str));

    // 输出填充后的数组
    for (int i = 0; i < sizeof(str); i++) {
        printf("%c ", str[i]);
    }

    return 0;
}

需要注意的是,memset函数是按字节设置内存的,value参数是一个int类型,但实际上只会使用其低8位(8个比特)的值来设置内存。而对于非字符类型的数组,为了避免类型错误,可以使用memcpy来设置特定值。

相关推荐
Logic1012 小时前
C语言/数据结构位运算题解:异或XOR找出学习计划中的“独特学习时间“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
wuminyu2 小时前
C++协程实现接收端的零拷贝Buffer管理原理剖析
java·linux·c语言·jvm·c++
m0_380743872 小时前
C++中的freopen的用法实例详解
开发语言·c++
Escalating_xu3 小时前
【Python】基础语法(1):常量、变量、类型、输入输出与运算符
开发语言·python
jimy13 小时前
polymorph.cpp里面的“析构函数、智能指针”问题
开发语言·c++
m0_380743873 小时前
PHP 8.3 缓存清除不生效怎么排查
开发语言·php
朝朝辞暮i4 小时前
C++ 第 6 课:switch —— 多状态选择
开发语言·c++·算法
小凡geo4 小时前
本地商家 GEO:用脚本一键生成 FAQPage 结构化数据,让 AI 切片更稳
开发语言·人工智能·python·microsoft·搜索引擎·ai
朝朝辞暮i4 小时前
C++ 第 4 课:if / else —— 让程序自己做决定
开发语言·c++
波力海苔夹心脆6754 小时前
C# 值类型与引用类型详解:存储位置、赋值机制、参数传递、相等比较、装箱拆箱与常见陷阱
开发语言·jvm·经验分享·笔记·c#·.net