define与typedef的区别
来源:互联网 发布:淘宝代销怎么没有了 编辑:程序博客网 时间:2024/06/18 05:42
一.define 是宏定义,typedef是类型定义
#define Elemtype int
typedef long byte_4
define 是宏定义,typedef是类型定义 相当于给变量起别名,两者是有区别的 define 是简单的字符串替换 ,而typedef是真正意义上的类型定义。#define 后面没有封号,typedef后面有封号。
#define pstr1 char*
typedef char* pstr2;
假如定义pstr1 s1,s2; s1是char *, 而对s2就没有定义
pstr2 s3,s4; 此时s3,s4都是char*类型的变量。
2.定义一个结构体变量
struct student
{
char * name;
int age;
} ;
定义了一个结构体类型 类似与 int整形,char字符型,struct student 合在一起成为一个类型,是结构体类型。
结构体类型定义有两种形式,1.可以在定义结构体的时候定义变量stu 2. 也可以在函数内部使用的时候定义结构体变量 struct studentstu ;注意struct student不能分开,不能写成student stu,只有他两在一起才是属于student结构体类型。
struct
{
char * name;
int age;
} stu;
3.正确理解 typedef 与结构体类型结合
typedef struct student
{
char * name;
int age;
} stu;
上面代码的正确理解为:给 struct student结构体类型 重新定义为stu ,也就是说给struct student这个结构体起一个别名叫做stu;
- typedef与#define的区别
- #typedef与#define的区别
- typedef与define的区别
- typedef与#define 的区别
- typedef与#define 的区别
- typedef与#define 的区别
- typedef与#define的区别
- #define与 typedef的区别
- typedef与define的区别
- typedef与define的区别
- #define 与 typedef 的区别
- typedef与#define的区别
- typedef 与 #define的区别
- typedef 与#define的区别
- #define与typedef的区别
- typedef 与 #define的区别
- define与typedef的区别
- typedef 与define 的区别
- Android build(4) -- building system8.3 android源码目录结构(上)
- A. Joysticks codeforces
- laravel 简单增删改查操作
- Android build(5) -- building system8.4 android源码目录结构(下)
- HDU1532_Drainage Ditches_最大流模板题
- define与typedef的区别
- Mybatis为什么第一次访问数据库会慢?
- 多重集合的排列和组合问题
- Android自动化测试uiautomator入门
- bzoj 3622: 已经没有什么好害怕的了 dp+容斥原理
- SVM代码实现非线性分类
- VideoFrame的编码,发送流(一)
- 棋盘 (省队集训 网(du)络(liu)流(ti))
- Hadoop 学习1