| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1413 人关注过本帖
标题:结构体数组申请空间的问题
只看楼主 加入收藏
Maps
Rank: 2
等 级:论坛游民
帖 子:16
专家分:10
注 册:2015-3-8
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:3 
结构体数组申请空间的问题
代码如下
#include"stdio.h"
#define maxsize 8
#include"malloc.h"
typedef int List;
typedef int position;
typedef struct array
{
    int date;
    position next;
}linkedlist;

linkedlist cursorspace[maxsize];

void initializer()//想作为全局变量
{
    int i;
    for(i=0;i<maxsize;i++)
    {
        cursorspace[i]=(linkedlist)malloc(sizeof(linkedlist));//为什么不能申请成功啊?
        cursorspace[i].next=i+1;
        cursorspace[i].date=0;
    }

}
main()
{
    position i;
    void initializer();
    for(i=0;i<maxsize;i++)
    {
        printf("%d ",cursorspace[i].next);
    }
}


要怎么该才能申请成功啊 ?新手求解啊,谢谢啦
搜索更多相关主题的帖子: position include 结构体 空间 
2015-03-18 18:36
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:10 
1.
程序代码:
#include"stdio.h"
#include"malloc.h"

#define maxsize 8

typedef int List;
typedef int position;

struct array
{
    int date;
    position next;
}cursorspace[maxsize];

void initializer()
{
    int i;
    for(i=0;i<maxsize;i++)
    {
        cursorspace[i].next=i+1;
        cursorspace[i].date=0;
    }
}
void main()
{
    int i=0;
    initializer();
    for(i=0;i<maxsize;i++)
    {
        printf("%d ",cursorspace[i].next);
    }
}


2.
程序代码:
#include"stdio.h"
#include"malloc.h"

#define maxsize 8

typedef int List;
typedef int position;

typedef struct array
{
    int date;
    position next;
}linkedlist;

linkedlist *cursorspace;

void initializer()//想作?全局?量
{
    int i;
    cursorspace=(linkedlist*)malloc(sizeof(linkedlist)*maxsize);
    for(i=0;i<maxsize;i++)
    {
        cursorspace[i].next=i+1;
        cursorspace[i].date=0;
    }

}
void main()
{
    position i;
    initializer();
    for(i=0;i<maxsize;i++)
    {
        printf("%d ",cursorspace[i].next);
    }
}

不要選我當版主
2015-03-19 12:14
Maps
Rank: 2
等 级:论坛游民
帖 子:16
专家分:10
注 册:2015-3-8
收藏
得分:0 
回复 2楼 wube
谢谢啦,厉害厉害。

看到了编程大海的一角,我还在努力的寻找方向,
2015-03-19 14:23
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:10 
程序代码:
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 8

typedef struct array {
    int date;
    int next;
} linkedlist;

linkedlist *cursorspace[MAXSIZE];

void initializer(void) {
    int i;

    for(i = 0; i < MAXSIZE; i++) {
        if(!(cursorspace[i] = malloc(sizeof(linkedlist))))
            exit(EXIT_FAILURE);

        cursorspace[i]->next = i + 1;
        cursorspace[i]->date = 0;
    }

}

int main(void) {
    int i;
    initializer();

    for(i = 0; i < MAXSIZE; i++) {
        printf("%d ", cursorspace[i]->next);

        if(cursorspace[i]) free(cursorspace[i]);
    }

    return 0;
}

Only the Code Tells the Truth             K.I.S.S
2015-03-19 14:32
快速回复:结构体数组申请空间的问题
数据加载中...
 
   



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

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