Rechercher : dans
Par :

Erreur: Invalid allocation size

Dernière réponse le 19 fév 2009 à 16:18:24 chalmia2s, le 18 fév 2009 à 12:23:49 
 Signaler ce message aux modérateurs

Bonjour,
je suis débutante en programmation, j'ai fait un programme sous Visual c++, pour avoir une dll. quand j'appelle la fonction dll , j'obtient l'erreur:
Debug Error
Program : C:\....\l.exe
Invalid allocation size: ............... Bytes

comme input j'ai un: int et une image (tableau WxLx3) et comme output: 4 tableau Nx1
dans la fonction, j'avais déclarer des tableaux [][] et j'ai fait des delete à la fin

comment faire pour regler ce problème?

Merci

Configuration: Windows Vista
Internet Explorer 7.0

Meilleures réponses pour « Erreur: Invalid allocation size » dans :
Codes d'erreur de Windows VoirLa liste ci-dessous détaille les codes d'erreur s'affichant dans les boîtes de dialogue sous Windows : Code Description ------------------------ 1 Fonction incorrecte. 2 Le fichier spécifié est introuvable. 3 Le chemin d'accès spécifié...
[MSN] Erreurs 0x80072ee6 - problème de connexion VoirErreurs 0x80072ee6 Pour résoudre ce problème, supprimer les cookies, vider le cache et l'historique du navigateur Internet Explorer. Puis cliquer sur Démarrer / Exécuter et saisir : regsvr32 MSXML3.dll Enfin, redémarrer l'ordinateur pour...
[IE] Erreur de script / Effectuer un débogage VoirDe temps en temps, lorsque vous naviguez sur le Net et que vous chargez une page Web, un message d'erreur de script survient : Une erreur est survenue. Une erreur est survenue sur le script de cette page. Souhaitez-vous effectuer un débogage...
Le contrôle des erreurs VoirLe contrôle d'erreurs Le codage binaire est très pratique pour une utilisation dans des appareils électroniques tels qu'un ordinateur, dans lesquels l'information peut être codée grâce à la présence ou non d'un signal électrique. Cependant le...
Gestion des erreurs et exceptions VoirGestion des erreurs et exceptions Les lignes de code que vous avez étudiées jusqu’à présent ne constituaient pas de vrais programmes mais des exemples. Elles ne comprenaient donc aucun traitement des erreurs. Les programmes que vous développerez...

1

fiddy, le 18 fév 2009 à 12:32:08

Salut,
Poste ton code ;)
Google is your friend

Répondre à fiddy

2

chalmia2s, le 18 fév 2009 à 14:39:43

Voila le code:

#include <windows.h>
#include "LME_Ext.h"
#include "kp.h"


static lme_err kp(lme_ref lme, lme_int32 nargin, lme_int32 nargout)
{
double **im;
double *ind1, *ind2;
int i, j, n;
int r, c;
double img;
r = 0;
c = 0;
lme_int32 m, l;
lme_float64 *re;

if(!LMECB_GetMatrix(1, &m, &l, &re, NULL)) return 0;
r = m;
c = l;
img = (double)*re; // image!

im = new double*[r];
for(i=0; i<r; i++)
im[i] = new double[c];

**im = img;
n=0;
for (i=0; i<r; i++){
for (j=0; j<c; j++){
if (im[i][j] != 0 ){
n++;
}
}
}
ind1 = new double[n];
ind2 = new double[n];
int k=0;
for (i=0; i<r; i++){
for (j=0; j<c; j++){
if (im[i][j] != 0 ){
ind1[k] = i;
ind2[k] = j;
k++;
}
}
}

if(!LMECB_PushMatrix(n, 1, &ind1, NULL)) return 0;
if(nargout >= 2)
if(!LMECB_PushMatrix(n, 1, &ind2, NULL)) return 0;

for(int i=0; i<r; i++){
delete [] im[i];
}
delete [] im;
delete [] ind1; delete [] ind2;
return 1;
}

static lme_fn fn[] = {
{"kp", kp, 1, 1, 1, 2},
};

lme_int32 InstallFn(lme_ref lme, lme_fn **fnarray)
{
LMECB_DbgWriteStr(".....................................");
*fnarray = fn;
return 1;
}

Répondre à chalmia2s

3

chalmi2as, le 18 fév 2009 à 19:07:01

Merci de me répondre si vous avez une idee, je suis bloquée
pleaaaaaase

Répondre à chalmi2as

4

 chalmia2s, le 19 fév 2009 à 16:18:24

J'ai souvent des problemes avec les pointeurs et les tableaux...
pour affecter un tableau à un autre il me faillait faire

for (i=0; i<r; i++){
for (j=0; j<c; j++){
im[i][j] =re[i+j*r]

c bon de le savoir ...

Répondre à chalmia2s
Collection CommentÇaMarche.net