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来设置特定值。

相关推荐
CRMEB系统商城5 分钟前
前后端技术栈全面换代!CRMEB 多商户(Java)v3.0更新预告
java·开发语言·小程序·php
2601_962885726 分钟前
如何用 Python 画 K 线图(蜡烛图)?(mplfinance + 均线 + 成交量)
开发语言·python
事圆则缓9 分钟前
Flutter 状态管理框架对比(三):Riverpod 如何连起购物车与异步价格
开发语言·javascript·flutter
蓝宝石的傻话11 分钟前
onvif-go(mickeyzzc/onvif-go v2)完整参考手册:从建工程到写出自己的 NVR 接入
开发语言·后端·golang
Elastic 中国社区官方博客20 分钟前
使用 Lucene 搜索你的 Bean —— Elasticsearch
大数据·开发语言·人工智能·elasticsearch·搜索引擎·全文检索·lucene
Sayai36 分钟前
Neo4j 内嵌模式(Embedded)实战:Java 嵌入式 vs 服务端部署的写入性能对比与 GC 调优
java·开发语言·性能优化·neo4j·图数据库
“AI国潮设计-小江”1 小时前
【SDXL实战】用AI生成“财神爷蛋糕×英歌舞人物”潮汕国潮甜品IP,附Prompt与批量生成思路
开发语言·人工智能·python·aigc
繁华的地方不一定留下你的脚印1 小时前
C++线程如何安全停止与唤醒:std::jthread、stop_token与condition_variable
开发语言·c++
Navigator_Z1 小时前
LeetCode //C - 1269. Number of Ways to Stay in the Same Place After Some Steps
c语言·算法·leetcode
caoerzhong1 小时前
跨境海外仓怎么管:JeeWMS 开源 Java 仓库管理系统打通头程、海外仓与尾程
java·开发语言·开源