| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1655 人关注过本帖
标题:分配内存错误了...
取消只看楼主 加入收藏
离开天空的云
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:110
专家分:198
注 册:2011-8-12
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
分配内存错误了...
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
struct s
{
    int a;   //存放有效数据//
    struct s *zzy;  //存放下一个节点的地址//
};
int main(void)
{
    void lianbiao(struct s *tzz);            
    void sclianbiao(struct s *tzz);               
    struct s *tzz=(struct s *)malloc(sizeof(struct s));
    lianbiao(tzz);  //调用创建链表函数//
    sclianbiao(tzz);//调用输出函数//
    getch();
    return 0;
}
void lianbiao(struct s *tzz)  //创建创建链表函数//
{
    void srlianbiao(struct s *tzz);
    struct s *fplc=0,*syzz=tzz;  //分别定义存放内存地址存放指针和上一节点地址//
    int i,n;
    printf("输入需要创建链表节点个数:\n  ");
    scanf("%d",&n);
    for(i=0;i<n-1;i++)
    {
        fplc=(struct s *)malloc(sizeof(struct s));  //分配内存到变量fplc//   
        if(fplc==0);                  //判断内存分配是否正常 否者结束程序//
        {
            printf("分配内存错误!程序结束....");
            exit(1);                         //结束程序//
        }
        syzz->zzy=fplc;
        syzz=fplc;
    }
    fplc->zzy=0;
    srlianbiao(tzz);              //调用输入函数//
}
void srlianbiao(struct s *tzz)
{
    struct s *a=tzz;
    int f;
    for(f=0;a!=0;f++)
    {
        printf("请输入第%d个节点数据域的值:",f);
        scanf("%d",&a->a);
        while(a->a<0)
        {
            printf("输入错误!请重新输入:");
            scanf("%d",&a->a);
        }
        a=a->zzy;
    }
}
void sclianbiao(struct s *tzz)  //创建输出函数//
{
    struct s *a=tzz;
    int f;
    for(f=0;a!=0;f++)
    {
        printf("第%d个节点数据域的值=%d\n",f,a->a);
        a=a->zzy;
    }
}
程序的第28行出错了,分配内存以后直接结束程序 我单独写一个分配内存的挒子 运行一切正常 但这个就是错了!!不可能每次调试系统都找不到合适的内存吧(几乎不可能)...
其他的地方还没调试过,不知道错没错 有错误的指点下吧~~
搜索更多相关主题的帖子: 内存 return include 
2011-11-21 19:17
离开天空的云
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:110
专家分:198
注 册:2011-8-12
收藏
得分:0 
回复 2楼 embed_xuel
每次都是这样一点小小的错误!上次的背包问题把++写成了--,分数平均分的问题,错误在把小数省略了  结果是定义浮点数的时候写成了int...狂晕!!!这次也一样啊。编译器怎么没报错?你说是抄的就是抄的呗 我说了没抄又会怎样?
2011-11-21 20:19
离开天空的云
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:110
专家分:198
注 册:2011-8-12
收藏
得分:0 
回复 4楼 cosam
我承认...  一天上3小时的网 两个半小时左右看书 其他时间就的敲代码 有时候连续几天都不敲
2011-11-22 19:12
离开天空的云
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:110
专家分:198
注 册:2011-8-12
收藏
得分:0 
回复 5楼 embed_xuel
我直接看了分配内存那条语句 反复调试了十几遍..都没去往看下,就算看了也没注意那点的细节好啦 我会该的!!
2011-11-22 19:16
离开天空的云
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:110
专家分:198
注 册:2011-8-12
收藏
得分:0 
回复 7楼 心灵百合
比如说什么地方?
2011-11-22 19:17
快速回复:分配内存错误了...
数据加载中...
 
   



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

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