C语言memset函数清空结构体成员数据

Posted perseverance52

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言memset函数清空结构体成员数据相关的知识,希望对你有一定的参考价值。

C语言memset函数清空结构体成员数据

  • 函数

memset( (void *)&struct_name, 0x00, sizeof(struct_name));

  • 应用实例
#include <stdio.h>
#include <string.h>

struct date
{ //结构体1
  int a;
  float b;
  char c[64];
} date1; //声明别名
int main()
{
  date1.a = 9527;
  date1.b = 3.14;
  strcpy(date1.c, "{\\"perseverance\\":\\"courge\\",\\"green\\":\\"9527\\"}"); // 标准json字符串;赋值方法strcpy()
  printf("size = %d\\n", sizeof(date1));
  printf("%d\\n %.2f\\n %s\\n", date1.a, date1.b, date1.c);
  memset(&date1, 0, sizeof(date1));//清空结构体成员数据
  printf("%d\\n %.2f\\n %s\\n", date1.a, date1.b, date1.c);
  return 0;
}

在这里插入图片描述

如果是结构体数组:struct sample_struct TEST[10];

 memset(TEST,0,sizeof(struct sample_struct)*10);

以上是关于C语言memset函数清空结构体成员数据的主要内容,如果未能解决你的问题,请参考以下文章

C结构体成员初始化memset

C语言中,使用一个结构体之前,要用memset把各个位清零???

c语言如何对结构体某一成员初始化

C语言 - 结构体初识

C语言-结构体

c语言memset()函数