读书人

[]为什么出现内存不可写异常

发布时间: 2012-02-20 21:18:23 作者: rapoo

[求助]为什么出现内存不可写错误?
原码如下,错误在主程序中,这是为什么呀?
//c1.h
#define maxsize 100
#define TRUE 1
#define FALSE 0
typedef struct
{
ElemType elem[maxsize];
int top;
} sqStack;

//hanshu.cpp

#include <stdio.h>
#include <math.h>

void InitStack(sqStack *s)
{
s->top = 0;
}

//主程序convert.cpp
typedef int ElemType;
#include "c1.h"
#include "hanshu.cpp"
#include "stdio.h"
void convert()
{
sqStack *s; //定义一个栈
InitStack(s); //初始栈,就在此处出现 "0x004010eb"指令引用的"0xccccce5c"内存.该内存不能为“written” 错误
}
void main()
{
convert();
}

[解决办法]
晕倒,convert 中的指针 s 还没初始化就开始用了,不出错才怪了。

=>

void convert()
{
sqStack s;
InitStack(&s);
}

读书人网 >软件架构设计

热点推荐