【自用战神源码】【悬赏接单源码】【redis链表源码】memset函数源码_memset函数原理

时间:2024-12-24 08:13:34 编辑:商业wifi 源码 来源:横盘标记指标源码

1.c语言memset初始化结构体问题

memset函数源码_memset函数原理

c语言memset初始化结构体问题

       1.memset函数的函数函数自用战神源码原型void *memset(void *s, char ch, size_t n);

       函数的第一个形式参数是指针类型,所以实参因为一个地址,即&a

       注意&a与a是不同的.a是结构体变量名,而&a是变量a的地址.

       2.另外memset()是一个库函数函数,需要加头文件#include<string.h>

       3.正如你所说的全局与主函数内定义变量a是有一点区别

       源代码如下:

       #include<stdio.h>

       #include<string.h>

       typedef struct ss

       {

           int num;

           int dir[5][3];

       }tent;

       //tent a;

       int main()

       {

           tent a;

        printf("a=%p\n",a);  //输出的是变量的地址 

        printf("&a=%p\n",&a);//注意a与&a的区别

           memset(&a,0,sizeof(a));

           return 0;

       }

       主函数内运行结果:

        

       全局变量运行结果:

        

        

       这个没警告的.

       已上在VC6.0下的结果

       为嘛第二个没警告,暂时不清楚.但第一个有警告是合理的.