关于typedef的问题

问题1:

typedef struct Student  Student;

上面的意思我知道,但是下面的我不明白是什么意思

typedef struct _Student
{
int age;
int sex;
}Student;

问题2:

typedef跟#define有区别吗???

你想象不到我有多执着
浏览 1175回答 3
3回答

眼前的黑不是黑zz

问题1 上面的意思和下面的是一样效果,都是给学生的结构体取了个别名,区别是下面的是定义结构体的同时取了别名,而上面的只是取别名,没有定义结构体。问题 2 1.typedef后面要加分号作为结尾,而define则不需要;2. typedef struct _Student {    int age;    char sex;}Student;    Student joke = {18,  '男'};======================    #define  stdent_num 50它们两个声明的位置是相反的,define声明的常量名字是在前面,typedef声明的名字在最后面。

快乐的时光

希望对你有所帮助 谢谢 在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像: typedef int INT; typedef是一种在计算机编程语言中用来声明自定义数据类型,配合各种原有数据类型来达到简化编程的目的的类型定义关键字。 #define是预处理指令。下面让我们一起来看。typedef是C语言语句,其功能是用户为已有数据类型取“别名”。 常常保存一个常量 比如说 #define PAI 3.14
打开App,查看更多内容
随时随地看视频慕课网APP