读书人

有关结构体怎么赋值

发布时间: 2012-01-20 18:53:53 作者: rapoo

有关结构体如何赋值
我定义了一个结构体,通过调用InitBasicInput函数对stBasicInput进行赋值,但是调试总报unhandled exception in xxx.exe
(MSVCRTD.DLL):0xC0000005:Access Violation错误
头文件:
struct SBasicInput
{
char city[5]; /*市别编码*/
char prov[5]; /*省别编码*/
};
SBasicInput *stBasicInput;

void CTest1Dlg::InitBasicInput(SBasicInput *stBasicInput,char* code);

cpp文件
void CTest1Dlg::test()
{
...
city= '021 ';
InitBasicInput(stBasicInput,(LPSTR)(LPCTSTR)city);
...
}

void CTest1Dlg::InitBasicInput(SBasicInput *stBasicInput,char* code)
{
strcpy(stBasicInput-> prov, "xin ");
strcpy(stBasicInput-> city,code);
}

[解决办法]
光看这段代码是没有错误的
而你的错误是访问无效指针
[解决办法]
.cpp:
stBasicInput = new SBasicInput;

[解决办法]
变量没有分配内存

读书人网 >VC/MFC

热点推荐