HeapAlloc を含めないと、プログラムでエラーが発生します。正確に何が起こっているのか理解できません。
int iIndex=0;
enum EDataType
{
kINT,
kFLOAT,
kUINT
};
typedef struct logstr
{
EDataType sData_Type;
string sComment;
bool bStatus;
float fDump_Value;
int iDump_Value;
UINT32 uDump_Value;
}slog,*StrLog;
Str_Dump[iIndex]->sData_Type=EDataType(0);//i get a error on this line exception0xC0000005: Access violation writing in location0X00000;
しかし、行を含めると
Str_Dump[iIndex]=(StrLog)HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(slog));
次に、プログラムを再度実行すると、正常に実行されます。
その行は正確に何をしているのですか?私は理解できない。
strdumpを次のように宣言しました
StrLog Str_Dump[100];