C++(Typedef声明)

typedef 声明:

使用 typedef 为一个已有的类型取一个新的名字。下面是使用 typedef 定义一个新类型的语法:

typedef type newname;

例如,下面的语句会告诉编译器,feet 是 int 的另一个名称:

typedef int feet;

现在,下面的声明是完全合法的,它创建了一个整型变量 distance:

feet distance;
时间: 2024-12-17 06:21:59

C++(Typedef声明)的相关文章

关于typedef声明新类型名

typedef作用是用简单的类型名代替复杂的类型名,这样易于理解,方便表示.如 typedef int Integer 指定Integer为类型名,作用于int 相同 Integer i 与 int i 等价. 复杂点的情况是定义函数指针,如 typedef void (*fun)(void) 表示用户自己定义了一个函数指针数据类型,fun ptr,即定义了一个函数指针ptr,可将函数地址赋给该指针,如 ptr=File; (File为一函数,函数名即地址,File()的入口地址赋给ptr,以后

typedef声明变量也是一种求值过程

前言: 什么叫做:声明变量是求值过程?请看下面的声明, int i; 很简单,声明了个整型变量i,再看如下声明, int *p; 也很简单,立刻反应出来它是指向整型的指针,但是具体如何推倒出来的呢?其实在C语言中,变量的声明就是一种求值过程,把*p这部分声明看成表达式,对这个表达式的求值的结果是int类型,这样就可以倒推出p是指针整型的指针了,因为只有对指向整型的指针进行解引用操作才是整型类型!还有很多复杂的声明,都可以使用这种方法求其具体的类型. 下面让我们来验证typedef定义的新类型和普

C的typedef声明与#预处理指令

1 typedef:给已有的类型声明新的名称,并不能创建新的数据类型: 1.1 typedef 声明 typedef unsigned char BYTE ; /* 将 unsigned char 重新命名为BYTE ;*/ typedef char * STRING ; /*将 char * 声明为STRING */ 1.2 typedef与#define typedef char * STRING; STRING name, course; //等价于 char * name , * cou

typedef与define宏定义用于声明新的类型之间的区别

摘自<c专家编程> typedef可以看成一种彻底的封装类型,在typedef声明类型之后不能再往里面增加其他的内容. 例子: #define peach int unsigned peach i; //没问题 typedef int banana; unsigned banana i; //错误,不能增加unsigned #define宏定义只是用于简单的替换 #define int_ptr int * int_ptr chalk, cheese; int * chalk, cheese;

C++ 声明新类型 typedef

在C++中,除了可以声明结构体.共用体.枚举等类型外,还可以用typedef声明一个新的类型名来代替已有的类型如: typedef int INTEGER;  //指定用标识符INTEGER代表int类型 typedef float REAL;  //指定用REAL代表float类型 这样,以下两行等价: int i,j; float a,b; INTEGER i,j; REAL a,b; 这样可以使熟悉FORTRAN的人能用INTEGER和REAL定义变量,以适应他们的习惯. 如果在一个程序中

C及C++中typedef的简单使用指南

又是在学数据结构的时候,发现了之前学习的知识遗忘很多,在发现对C/C++中关键字typedef的理解还是没有到位后,我翻阅了学C++用到的课本,又问了度娘,也看了不少关于typedef用法的博客.于是我就想把我理解的东西整理下来. 一.基本解释 typedef为C语言的关键字,作用是为一种数据类型定义一个新名字.这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等). 在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化

typedef的用法

第一.四个用途 用途一: 定义一种类型的别名,而不只是简单的宏替换.可以用作同时声明指针型的多个对象.比如:char* pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, // 和一个字符变量:以下则可行:typedef char* PCHAR; // 一般用大写PCHAR pa, pb; // 可行,同时声明了两个指向字符变量的指针虽然:char *pa, *pb;也可行,但相对来说没有用typedef的形式直观,尤其在需要大量指针的地方,typedef的方式更省

解释复杂声明符

在解释复杂声明符时,方括号和圆括号(即,标识符右侧的修饰符)优先于星号(即,标识符左侧的修饰符). 方括号和圆括号具有相同的优先级并且都是从左到右关联. 在完全解释声明符之后,将应用类型说明符以作为最后一步. 通过使用圆括号,您可以重写默认关联顺序和强制实施特定解释. 但是,绝不要单独在标识符名称两边使用圆括号. 这可能会被错误解释为参数列表. 解释复杂声明符的一个简单方法是通过下列 4 个步骤“从里到外”地读取它们: 从标识符开始并直接查找方括号或圆括号(如果有)的右侧. 解释这些方括号或圆括

C++ typedef用法小结 (※不能不看※)

C++ typedef用法小结 (※不能不看※) 第一.四个用途 用途一: 定义一种类型的别名,而不只是简单的宏替换.可以用作同时声明指针型的多个对象.比如:char* pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, // 和一个字符变量:以下则可行:typedef char* PCHAR; // 一般用大写PCHAR pa, pb; // 可行,同时声明了两个指向字符变量的指针虽然:char *pa, *pb;也可行,但相对来说没有用typedef的形式直观,