赞
踩
typedef 用法一句话总结————把定义的类型改名
举个例子:我们熟悉的int类型 定义一个变量, 如int a;
突然,我觉得 int 有点长, 于是把int 改为单个字母 Z; 如 typedef int Z;
Z a = int a ;
- #include <stdio.h>
-
- typedef int Z;
-
- int main()
- {
-
- int a =10;
- printf("a = %d\n",a);
- printf("%d\n",sizeof(a));
-
- Z b=10;
- printf("b = %d\n", b);
- printf("%d\n",sizeof(b));
-
- return 0;
- }
运行结果
a = 10
4
b = 10
4
- #include<stdio.h>
-
- //结构体
- typedef struct node
- {
-
- int data;
- struct node *next;
-
- } * Pnode,Node;
-
PNode 等价于 struct node * ;
我们是不是有疑惑,不是有个*, 不应该是 *PNode。
为什么不是*PNode
解析:首先我们知道一点typedef是把定义类型改名。如这个结构体
改的是红色字体
typedef struct node
{int data;
struct node *next;
} * Pnode,Node;
省略结构体内容,typedef struct node * Pnode
至于为什么不是*PNode,从我们开始学习c语言到结束,我们并没学过*PNode这种定义类型。
也就是得出为什么不是*PNode , 因此得出结论,PNode 等价于 struct node * ;
从2.1节,我们很容易得出
Node 等价于 struct node;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。