typedef的用法——c语言

一、ypedef

1.1:typedef的用法(如上图所示)

          typedef 用法一句话总结————把定义的类型改名

举个例子:我们熟悉的int类型   定义一个变量, 如int  a;

                 突然,我觉得 int 有点长, 于是把int 改为单个字母    Z;      如 typedef int  Z;     

                            Z  a   =   int  a  ;

1.2、代码如下

#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

二、typedef在结构体的运用

#include<stdio.h>

//结构体
typedef struct node
{

   int data;
   struct node *next;
    
 } * Pnode,Node;

2.1、Pnode解析

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.2、 Node解析

从2.1节,我们很容易得出

                  Node  等价于    struct  node;

猜你喜欢

转载自blog.csdn.net/weixin_47783699/article/details/128135573