| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1567 人关注过本帖
标题:请问最后一行是什么意思??
只看楼主 加入收藏
Garand
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2006-5-27
收藏
 问题点数:0 回复次数:11 
请问最后一行是什么意思??

struct node {
char *item;
struct node *next;
};

typedef struct node *NODEPTR;

如题,请问这个typedef struct node *NODEPTRS是什么意思?谢谢大家

搜索更多相关主题的帖子: next 
2006-07-16 16:15
摄政王:多尔滚
Rank: 1
等 级:新手上路
帖 子:148
专家分:0
注 册:2006-7-9
收藏
得分:0 

struct node {
char *item;
struct node *next;
};

typedef struct node *NODEPTR;

====>
define pointer

19世纪是火车的时代,20世纪是汽车的时代,21世纪是网络的时代。有谁不同意?
2006-07-16 16:17
unicorn
Rank: 4
等 级:贵宾
威 望:14
帖 子:1066
专家分:0
注 册:2005-10-25
收藏
得分:0 
typedef struct node *NODEPTR; 道理与  struct node *next;一样 ,定义一个结构体指针

unicorn-h.spaces. ◇◆ sava-scratch.spaces.  noh enol ! pue pu!w hw u! shemle aq ll!m noh 
2006-07-16 16:23
Garand
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2006-5-27
收藏
得分:0 
是啊,关键是为什么要用typedef我不太理解,直接用struct node *NODEPTR不就可以了吗?为什么还要加typedef ?
2006-07-16 16:26
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 
-。-是这样么?

这个typedef是自定义吧。

举个例子 typedef int INTABC(这边是乱打的。用上这个东西就是方便程序的可读性和移植性)

下面要定义int型的变量就要有INTABC定义。

#include <stido.h>
typedef int INTABC
main()
{INTABC i........}

人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-07-16 16:28
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
类型定义
NODEPTR就是struct node *
以后凡是要定义struct node *都可以用NODEPTR代替
起到方便的作用,一个类型替换而已,并不是新类型.

倚天照海花无数,流水高山心自知。
2006-07-16 16:29
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
以下是引用Garand在2006-7-16 16:26:25的发言:
是啊,关键是为什么要用typedef我不太理解,直接用struct node *NODEPTR不就可以了吗?为什么还要加typedef ?

这个是语法问题吧,呵呵
自定义类型就是要这个关键字的.


倚天照海花无数,流水高山心自知。
2006-07-16 16:30
Garand
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2006-5-27
收藏
得分:0 
楼上大哥说的我懂啊,就是给变量类型起个别名阿,但 typedef struct node *NODEPTR 这句话里面typedef显然不是起别名的作用吧?
2006-07-16 16:31
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 
以下是引用Garand在2006-7-16 16:31:53的发言:
楼上大哥说的我懂啊,就是给变量类型起个别名阿,但 typedef struct node *NODEPTR 这句话里面typedef显然不是起别名的作用吧?

难道不是直接变成定义指针结构体的么?我还在看咧。。。我也有点迷糊了。


人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-07-16 16:35
wangsong
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-7-15
收藏
得分:0 

struct node {
char *item;
struct node *next;
};

typedef struct node *NODEPTR;

在这里struct node相当于一个自定义的数据类型,有两个成员变量
这里使用了typedef的用法,typedef顾名思义,用于类型的定义,例如:
typedef int* INT;
在这里INT代表了int*,用INT可以定义新的变量
INT ptoint = NULL;
ptoint 是一个指向整型变量的指针。

同理:在typedef struct node* NODEPTR;中,NODEPTR就代表类型struct node*(结构指针类型),同时
用NODEPTR可以定义新的变量。如:
NODEPTR node_;
但要注意:
typedef struct node {
char *item;
NODEPTR* next;
}NODEPTR ;
这样的写法是不正确地!


2006-07-16 16:36
快速回复:请问最后一行是什么意思??
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019423 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved