7.3结构体是纸老虎,旧知识新用法
普通定义和结构体定义的不同方式和区别
#include<stdio.h>
#include<stdlib.h>
#include <string.h>
/* 7.3
author:edcfreedom
date:2021/8/25
funDescription:
结构体也就是一个纸老虎
结构体里面的那些东西,都是我们熟悉的东西,千万不要因为被一个结构体框起来以后就不知所措
旧的知识,新的用法
*/
void func(int data)
{
printf("函数:data = %d\n",data);
}
struct Datas
{
int a;
char c;
float f;
double d;
char str[128];
void(*p)(int a);
};
int main()
{
int a = 10;
printf("a = %d\n",a);
char c = 'M';
printf("c = %c\n",c);
float f = 1.2;
printf("f = %f\n",f);
double d = 123.456;
printf("d = %lf\n",d);
//char *str = "shuai";//初始化可以直接用指针变量指向字符串
char *str;
str = (char *)malloc(128);
memset(str,'\0',128);
strcpy(str,"shuai");
puts(str);
void(*p)(int data) = func;
p(10);
puts("========================");
struct Datas d1;
d1.a = 100;
d1.c = 'd';
d1.f = 2.22;
d1.d = 123.456;
strcpy(d1.str,"shuai");
d1.p = func;
printf("a = %d\n",d1.a);
printf("c = %d\n",d1.c);
printf("f = %d\n",d1.f);
printf("d = %d\n",d1.d);
puts(d1.str);
d1.p(10);
return 0;
}