typedef

功能:用自定义名字为已有数据类型命名

注意:

1 用typedef只是对已经存在的类型指定一个新的类型名,而没有创造新的类型

2当不同源文件中用到同一类型数据时,常用typedef声明一些数据类型。可以把所有的typedef名称声明单独放在一个头文件中,然后在需要用到它们的文件中用#include指令把它们包含到文件中。这样编程者就不需要在各文件中自己定义typefef名称了

 1 typedef int 整数;//别名
 2 typedef float 实数;//typedef没有创建数据类型 只是起一个别名
 3 
 4 //typedef num1 整数1; typedef 仅仅使用与类型
 5 //#define 整数1 num1define 就是替换使用与任何场合而typedef只有类型
 6 
 7 void main1()
 8 {
 9     整数 num1 = 10;
10     实数 fll = 10.6;
11     printf("%d",num1);
12     printf("
%f",fll);
13 
14     getchar();
15 }
 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <string.h>
 4 
 5 void main2()
 6 {
 7     /*int a[100];
 8     int s[100];*/
 9     typedef int s[100];
10     s x;//等价为int x[100];
11     int i;
12     for(i=0;i<100;i++)
13     {
14         x[i] = i;
15         printf("%d
",x[i]);
16     }
17     getchar();
18 }
19 
20 void mian3()
21 {
22     /*char *str;
23     char *STR;*/
24 
25     /*typedef char *STR;
26     STR s1 = "dfdfd";
27     printf("
%s",s1);*/
28 
29     
30 }
31 
32 void go()
33 {
34     system("calc");
35 }
36 void main4()
37 {
38     //void(*p)();//函数指针
39     //void (*go)();
40     typedef void(*go)();
41     go go1;//简化的函数指针进行的调用
42     go1();
43 
44     system("pause");
45 }
46 
47 typedef struct info
48 {
49     char name[100];
50     int num;
51 }INFO;
52 typedef INFO *p;
53 void main()
54 {
55     p p1;//结构体类型指针
56     //等价为 struct info info1={"df",45}
57     INFO info1 = {"df",45};
58     printf("%s,%d",info1.name,info1.num);
59     p1 = (p)malloc(sizeof(INFO));
60     p1->num = 100;
61     strcpy(p1->name,"dfd");
62     printf("%s,%d",p1->name,p1->num);
63     getchar();
64 }
原文地址:https://www.cnblogs.com/lanjianhappy/p/6013915.html