| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 519 人关注过本帖
标题:大家帮看看这里
只看楼主 加入收藏
wshong2005
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-1-11
结帖率:0
收藏
已结贴  问题点数:10 回复次数:3 
大家帮看看这里
头文件中的
struct film
{
    char title[TSIZE];
    int rating;
};
//一般类型定义
typedef struct film Item;

typedef struct node
{
    Item item;
    struct node *next;
}Node;

typedef  Node * List;//这里定义的list(struct node * list是不是和这个同义)应该是指针吧?
//函数原型
void InitializeList(List * plist);//那这里难到是指针的指针?
//操作:确定列表是否为空列表
bool ListIsEmpty(const List * plist);
---------------------//函数定义----------------------------------
//接口函数
//把列表设置为空列表
void InitializeList(List * plist)
{
    * plist = NULL;
}

//如果列表为空则返回真
bool ListIsEmpty(const List * plist)
{
    if(*plist == NULL)
        return true;
    else return false;
}

----------------//main函数中的----------------------
int main(void)
{
    List movies;//如果这里定义的是指针
    Item temp;
    //初始化
    InitializeList(&movies);//为什么这里还取地址啊?
    if(ListIsFull(&movies))//为什么这里还取地址啊?
    {
        fprintf(stderr,"no memory available!bye\n");
        exit(1);
    }
    //收集并存储
    puts("enter first movie title:");
    while(gets(temp.title)!=NULL&&temp.title[0]!='\0')
    {
        puts("enter your rating<0-10>:");
        scanf("%d",&temp.rating);
        while(getchar()!='\n')
            continue;
        if(AddItem(temp,&movies)==false)
搜索更多相关主题的帖子: rating title 
2013-08-30 17:00
jg658237
Rank: 7Rank: 7Rank: 7
来 自:青藏高原
等 级:黑侠
帖 子:224
专家分:529
注 册:2013-8-8
收藏
得分:4 
指针做形参

武功再高也怕菜刀.
2013-08-30 17:44
驱动器
Rank: 2
来 自:广西
等 级:论坛游民
帖 子:15
专家分:19
注 册:2013-8-20
收藏
得分:4 
我也是新手,不过这些
typedef  Node * List;//这里定义的list(struct node * list是不是和这个同义)应该是指针吧?
//函数原型
void InitializeList(List * plist);//那这里难到是指针的指针?

List movies;//如果这里定义的是指针
    Item temp;
    //初始化
    InitializeList(&movies);//为什么这里还取地址啊?
    if(ListIsFull(&movies))//为什么这里还取地址啊?
    {

是数据结构里面的内容,应该是线性表吧,链表的定义声明。

总要流够多的泪水才懂得时间的可贵,却又总在泪水干后让时间肆虐地流淌。
2013-08-30 21:06
youngdavid
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:107
专家分:698
注 册:2012-9-24
收藏
得分:4 
typedef  Node * List;//这里定义的list(struct node * list是不是和这个同义)应该是指针吧?
typedef  Node * List=typedef  struct node * List,也就是说List是struct node *的标示符号,表示前面定义的结构体的指针的这一数据类型。

void InitializeList(List * plist);//那这里难到是指针的指针?
前面定义了List是结构体的指针的类型,这儿的plist是定义的形参变量,是指向结构体指针的指针类型(List *类型)。

List movies;//如果这里定义的是指针
InitializeList(&movies);//为什么这里还取地址啊?
if(ListIsFull(&movies))//为什么这里还取地址啊?
movies定义的就是指向结构体的指针变量,取地址就是指向结构体指针的指针类型值(List *类型),就用来传给函数nitializeList,因为前面定义的函数的形参是List *类型的。


2013-09-02 19:13
快速回复:大家帮看看这里
数据加载中...
 
   



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

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