问题描述
- 结构体类型的指针初始化和赋值问题
- 编程的时候我定义了一个结构体,结构体有几个变量的值我必须要赋初值,因为循环得用。
结构体这样定义:
typedef struct
{
BYTE stream_Type;
unsigned short PID;
unsigned short InfoDescrip;
}M_PICE;
用的时候:
M_PICE* p_Mpice = NULL;
p_Mpice->InfoDescrip = 0;
运行到上一句就报错
Unhandled exception in DVB.exe:0xC0000005:Access Violation
解决方案
typedef struct pice
{
int stream_Type;
unsigned short PID;
unsigned short InfoDescrip;
}M_PICE;
M_PICE* pMypice;
int main(){
pMypice = (M_PICE*)malloc(sizeof(M_PICE));//此处分配内存空间,否则怎么存数据、
pMypice->InfoDescrip = 0;
printf(""%dn""pMypice->InfoDescrip);
}
赶紧采纳。
时间: 2024-10-30 18:53:03