• memset()函数的使用


    1、概述

    memset()函数,称为按字节赋值函数,使用时需要加头文件 #include<cstring>或者#include<string.h>。通常有两个用法:

    (1)用来给整形数组整体赋值为0或者-1;

    (2)给字符数组整体赋值

     

    2、整形数组整体赋值

    整形数组整体赋值为0或-1:

    #include <iosream>#include <cstring>using namespace std;int main(){    int a[10];    memset(a,0,sizeof(a));      //赋值为-1: memset(a,-1,sizeof(a));    return 0;}

    当然赋值为0也可以使用更加简易的写法:

    #include <iostream>using namespace std;int main(){    //其本质是将 0赋值给a[0],其余元素自动填充为0    int a[10]={0};      return 0;}
    
     

    ⚠️注意:memset()是按字节赋值,整形数是占4个字节,因而memset()函数只能用来赋值为0和-1,赋值别的值会出错。如果想要整体赋值为除0和-1外的其他值,则需要使用fill函数,这个后面再介绍。

     

    3、字符型数组整体赋值

    因为字符型变量刚好是占用一个字节,所以我们就可以memset()函数给一个字符数组整体赋值为某一个字符。例如:给一个一维字符数组整体赋值为 “空字符”,参考代码如下:

    #include <iostream>using namespace std;int main(){    char a[10];    memset(a,0,sizeof(a));//空字符的ASCII码为0    return 0;}

    当然,你要整体赋值为其他任何字符,直接在memset()函数的第二个参数中填写即可。二维数组操作同理:

    #include <iostream>using namespace std;int main(){    char a[10][10];    //二维数组中100个字符全部被赋值为‘A’字符    memset(a,'A',sizeof(a));    return 0;}
  • 相关阅读:
    JDK和TOMCAT的安装与配置环境变量
    jsp_类的封装_集合的应用
    eclipse的安装
    动态JSP的了解
    Xamarin GitHub 下载的源码运行不了
    VS2017 移动开发(Android and IOS) 序
    C# 移动开发 MasterDetailPage 侧滑
    C# 获取本机IP(优化项目实际使用版)
    C# 调用第三方DLL缓冲区溢出导致的异常
    后台安装 SQL Server 无人值守 安装
  • 原文地址:https://www.cnblogs.com/CodeWorkerLiMing/p/12007333.html
Copyright © 2020-2023  润新知