#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 10
typedef struct
{
int r[MAXSIZE+1];
int length;
}SqList;
int main()
{
int i;
SqList *L;
L->length=100; // 程序一运行到这一步就报错,不知道为什么。。。
}
ä½ æ²¡æ让æéåéLæåæ个å°åï¼ä»æ¯ä¸ªéæéï¼å¯è½æåæ个ä¸å¯è¯»åæåå¨çå
å空é´ï¼ä½ å L->length=100; æ¹åè¿ä¸ªå
å空é´ä¸åçå¼ï¼ä»å½ç¶æ¯éçã
mainå½æ°æ¹ä¸ä¸ï¼
int main()
{
int i;
SqList lList={0};
SqList *L=&lList;//让Læå lListæå¤çå å空é´ã
L->length=100;
}
mainå½æ°æ¹ä¸ä¸ï¼
int main()
{
int i;
SqList lList={0};
SqList *L=&lList;//让Læå lListæå¤çå å空é´ã
L->length=100;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-03-21
你只声明了,没有去new SqList,怎么能去用?
int i;
SqList *L;
L = new SqList;
L->length=100;
int i;
SqList *L;
L = new SqList;
L->length=100;
第2个回答 2013-03-21
必须错,L是一个指针,你没有让它指向哪个地方就给他赋值,怎么能行呢?乜可以这样:
SqList *L = new SqList();给L所指的地方分配一个空间就行了
SqList *L = new SqList();给L所指的地方分配一个空间就行了
第3个回答 2013-03-21
SqList *L = (SqList *)malloc(sizeof(Sqlist)); // 需要申请空间的。
第4个回答 2013-03-21
你这样编写没有错误,我在c-free上试过,打印出来是100
第5个回答 2013-03-21
L->length换成 L.length试试