【源码加入cms】【长安打赏源码教程】【c源码dev打开乱码】memset 源码

来源:qt 适配层源码

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

memset 源码

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

       1.memset函数的源码源码加入cms原型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下的结果

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

文章所属分类:时尚频道,点击进入>>