有关结构体如何赋值
我定义了一个结构体,通过调用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;
[解决办法]
变量没有分配内存