Dev - C++ - Problema con punteros!! Ayuda por favor...

 
Vista:

Problema con punteros!! Ayuda por favor...

Publicado por BlackWolf (1 intervención) el 21/02/2007 22:49:08
Hola a todos, tengo el problema que me esta dando "violacion de acceso a memoria" cuando intento ejecutar mi programa, alguien seria tan amable de decirme exactamente que estoy haciendo mal y/o porque da el error.

El error se da al terminar la funcion, y es la siguiente:

Código:

void efectuarOperacion() {
char *pOper, *pNum1, *pNum2, *pResul;
int num1, num2, resul;
bool ok = true;

pOper = pilaOp->popPila();
pNum1 = pilaNum->popPila();
pNum2 = pilaNum->popPila();
// Conversion
num1 = atoi(pNum1);
num2 = atoi(pNum2);
resul = 0;
punteroClean(pResul);
// Efectuo Operacion
switch (getOperacion(pOper)) {
case 1: //Suma
resul = num2 + num1;
break;
case 2: //Resta
resul = num2 - num1;
break;
case 3: //Multiplicacion
resul = num2 * num1;
break;
case 4: //Division
if (num1 <= 0) {
cout << "\nERROR - DIVISION ENTRE 0";
ok = false;
} else {
resul = num2 / num1;
}
break;
}
if (ok) { // Meto en Pila
pResul = new char[255];
punteroClean(pResul);
itoa(resul, pResul, 10);
strcat(pResul,"$");
pilaNum->putPila(pResul);
delete(pResul);
}

} ***** AQUI DA EL ERROR

Gracias por la ayuda!!
Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema con punteros!! Ayuda por favor...

Publicado por Victor (3 intervenciones) el 26/03/2007 22:20:42
Sabes pueden ser dos cosas:
1.- Sin saber bien como te devuelve valores el metodo pop de la pila podrìas buscar por ahí.

2.- Tu funcion delete ()
debe incluir la instruccion delete []NomPuntero y no delete NomPuntero, el primero se usa supuestamente cuando se esta apuntando a un arreglo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar