Pb d'initialisation d'un buffer

Résolu
Signaler
Messages postés
46
Date d'inscription
lundi 19 mai 2003
Statut
Membre
Dernière intervention
16 avril 2009
-
Messages postés
46
Date d'inscription
lundi 19 mai 2003
Statut
Membre
Dernière intervention
16 avril 2009
-
bonjour tout le monde.
je programme avec vc++6 avec les mfc
et j'ai une erreur d'exécution pour intialiser un buffer

double* buffer;
memset(buffer, 0, 307200 * sizeof(double));

j'ai bien essayer une autre init :

inline void CMotorDlg::SetMemory(void* pDest, UINT nData, int iSize)
{
_asm
{
mov edi, pDest;
mov ecx, iSize;
shr ecx, 2;
mov eax, nData;
rep stosd;
}
}


inline void CMotorDlg::ClearMemory(void* pDest, int iSize)
{
SetMemory(pDest, 0, iSize);
}

avec ClearMemory(buffer, 307200 * sizeof(double));

mais c pareil, alors que sans mfc ca fonctionne bien.
le debug me dit que c le "rep stosd" qui plante


qu'ai-je oublié ?


merci

saibe

2 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
buffer est alloué ???

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
46
Date d'inscription
lundi 19 mai 2003
Statut
Membre
Dernière intervention
16 avril 2009

merci BruNews !
ct bien ça :
buffer = reinterpret_cast<double*>(malloc(307200 * sizeof(double))));
avant l'init.
merci encore !)

saibe