鱼C论坛

 找回密码
 立即注册
查看: 1128|回复: 9

[已解决]下面解释是否正确???

[复制链接]
发表于 2021-12-28 22:16:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
        typedef struct stu
        {
                int date;
                struct stu *next;
        }node,*linklist;
*linklist是不是等于struct stu
                  {
                       int date;
                       struct stu *next;
                    };
即*linklist  ss;是否等价于 struct stu
                 {
                     int date;
                     struct stu *next;
                  }ss;



最佳答案
2021-12-28 22:41:45
*linklist  ss;
这样写是错误的,语法错误
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-12-28 22:41:45 | 显示全部楼层    本楼为最佳答案   
*linklist  ss;
这样写是错误的,语法错误
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-28 23:02:24 | 显示全部楼层
人造人 发表于 2021-12-28 22:41
*linklist  ss;
这样写是错误的,语法错误

意思就是不等价于是吗
       typedef struct stu
        {
                int date;
                struct stu *next;
        }node,*linklist;
有时像上面有个linklist,后面某个函数例如 linklist(int x);这里的linklist与上面那个是没关系是吗,这只是个随意起的函数名是吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-12-28 23:13:45 | 显示全部楼层
小黄练编程 发表于 2021-12-28 23:02
意思就是不等价于是吗,
       typedef struct stu
        {

没明白你的问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-28 23:18:51 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-12-28 23:36:08 | 显示全部楼层


这个被typedef定义了的*linklist意思是不是   linklist是用来定义一个指向改结构体的指针啊。
例如 linklist *p;p只可以指向该结构体。   
struct stu
        {
                int date;
                struct stu *next;
        };
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-28 23:44:15 | 显示全部楼层


呜呼,刚突然想明白了,得亏你昨天那篇文章,刚想起里面一个typedef int a[10]的例子,a[10]只能用来定义有10个int类型数据的数组。这个类似。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-12-28 23:45:28 | 显示全部楼层
小黄练编程 发表于 2021-12-28 23:36
这个被typedef定义了的*linklist意思是不是   linklist是用来定义一个指向改结构体的指针啊。
例如 li ...

这个被typedef定义了的*linklist意思是不是
不是
typedef创建了一个新的类型,名字是 linklist
这个新的类型和下面这个是一样的
struct stu
        {
                int date;
                struct stu *next;
        } *

下面这两个是一回事
linklist x;
struct stu
        {
                int date;
                struct stu *next;
        } *x;

当然,官方的叫法是别名,但是我更喜欢说成是创建一个新的类型,这符合我对typedef的理解
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-12-28 23:47:05 | 显示全部楼层
小黄练编程 发表于 2021-12-28 23:44
呜呼,刚突然想明白了,得亏你昨天那篇文章,刚想起里面一个typedef int a[10]的例子,a[10]只能用来定 ...

对,就是这个
不能用 #define 的眼光看 typedef
他们两个完全不一样
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-12-28 23:51:08 | 显示全部楼层
人造人 发表于 2021-12-28 23:47
对,就是这个
不能用 #define 的眼光看 typedef
他们两个完全不一样

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-9 02:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表