首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

一个关于串的动态分配内存的有关问题,那位大侠帮帮忙,为什么在函数里面分配内存就出了错?

2012-03-27 
一个关于串的动态分配内存的问题,那位大侠帮帮忙,为什么在函数里面分配内存就出了错??#include stdio.h#

一个关于串的动态分配内存的问题,那位大侠帮帮忙,为什么在函数里面分配内存就出了错??
#include "stdio.h"
#include "stdlib.h"
#define CHUNKSIZE 30
#define OK 1
#define ERROR 0
struct Chunk{
char ch[CHUNKSIZE];
struct Chunk *next;
};
struct Lstring{
Chunk *head,*tail;
int curlen;
};
int InitString(Lstring &L)//引用
{
L.head=(Chunk *)malloc(sizeof(Chunk));//在这个函数里面分配内存为什么就不可以呢
L.head=L.tail;
L.curlen=1;
return OK;
}
void main()
{
Lstring L;
InitString(L);
//L.head=(Chunk *)malloc(sizeof(Chunk));//当我在外面分配内存可以输入
scanf("%s",L.head->ch);
printf("%s",L.head->ch);
}

[解决办法]
这一句L.head=L.tail;写反了,应该是:L.tail=L.head;

热点排行