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;
typedef的用法——c语言相关推荐
- 第十章 结构体_C语言typedef的用法详解
C语言允许为一个数据类型起一个新的别名,就像给人起"绰号"一样. 起别名的目的不是为了提高程序运行效率,而是为了编码方便.例如有一个结构体的名字是 stu,要想定义一个结构体变量就 ...
- c语言typedef怎么自定义函数,c语言中typedef的用法
C语言是一门通用计算机编程语言,应用广泛.C语言的设计目标是提供一种能以简易的方式编译.处理低级存储器.产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言. 尽管C语言提供了许多低级处理的功 ...
- c语言typedef的用法,C语言中typedef用法总结,看完就能像编程老手一样熟练运用...
请看下文 C语言中typedef关键字应用比较常见,许多C语言初学者对它的用法不甚了解.事实上,我们可以用typedef来定义自己习惯使用的数据类型名称,可以替代自己所熟悉的基本类型.数组类型.指针类 ...
- C语言typedef的用法详解
C语言允许为一个数据类型起一个新的别名,就像给人起"绰号"一样. 起别名的目的不是为了提高程序运行效率,而是为了编码方便.例如有一个结构体的名字是 stu,要想定义一个结构体变量就 ...
- 【C语言】结构体定义 typedef struct 用法详解和用法小结
结构体定义 typedef struct 用法详解和用法小结 文章目录 结构体定义 typedef struct 用法详解和用法小结 0. 前言 1. 首先:在C中定义一个结构体类型要用typedef ...
- typedef的用法
结构体定义:struct与typedef struct 用法详解和用法小结 分类: C/C++ 2011-10-16 13:44 4446人阅读 评论(3) 收藏 举报 struct编译器fun语言c ...
- 关于typedef的用法
关于typedef的用法 一.基本概念剖析 int* (*a[5])(int, char*); //#1 void (*b[10]) (void (*)()); //#2 double(*) ...
- 一个typedef的用法
今天在看C代码的时候,遇到一个定义,一时半会看不明白.从网上找了一下typedef的用法,留着慢慢理解吧. === 代码片段: typedef struct ZRead ZRead; /* Metho ...
- C++ typedef 以及 typedef struct 用法
C++ typedef 以及typedef struct 用法 1 概述 2 typedef作用及用法 3 区别 #define 4 typedef struct在c/c++中的区别 4.1区别一 4 ...
最新文章
- [文摘]Maven安装jar包的命令
- wxWidgets:wxCheckBox类用法
- IntellIJ IDEA 配置 Maven 以及 修改 默认 Repository
- 为什么电脑不能打字_嘉兴在线丨「生活经济学」为什么笔记本电脑能在任何国家的供电标准下运作,其他大部分电器却不能?...
- Java中使用ArrayList的10个示例–教程
- iOS中画矩形的几种方法总结
- 54 SD配置-定价配置-分配条件类型到条件排斥组
- SpringBoot项目打成War包??
- 使用VS2015的Visual Studio Installer打包
- NYOJ-摆方格(贪心)
- Arm 架构下的中断
- Vue CLI 3 中文文档
- ucinet网络分析使用总结
- Translate插件的有道翻译
- adb启动程序命令:adb shell am start
- iir滤波器的基本网络结构_(IIR)滤波器的基本结构-Read.ppt
- 计算机会计核算要求有哪些内容,2018初级《经济法基础》第二章知识点:会计核算基本要求...
- python跟excle公式区别_python – numpy.std和excel STDEV函数有什么区别吗?
- MATLAB-视频的前景目标提取
- 海边溺水,救援机器人“生死时速”;机器学习论文撰写清单;Kaggle数据科学新手教程;约克大学『计算机视觉』课程资料;前沿论文 | ShowMeAI资讯日报