[C con Clase] Exepción con función strcat...

Alastuey, Lucas Lucas.Alastuey en sonda.com
Jue Oct 18 20:29:13 CEST 2007


La segunda variable tienen que tener asignada memoria

Char *cad2 = new char[6]

Acuérdate de borrarla delete * cad2

-----Mensaje original-----
De: cconclase-bounces en listas.conclase.net [mailto:cconclase-bounces en listas.conclase.net] En nombre de ERVA
Enviado el: Viernes, 14 de Septiembre de 2007 12:43
Para: cconclase en listas.conclase.net
Asunto: [C con Clase] Exepción con función strcat...

Hola, estoy usando VC++ para hacer un programa. En el uso la función "strcat", cuando lo ejecuto me lanza un exepción (la compilación me arroja sin errores).

Estoy programando para Windows, para eso estoy usando VS 2005, pensé que tenía algún bug el entorno, entonces descargue MinGW, pero con el mismo resultado, pero para esto hice un programa más simple y aún así me lanzo la exepción.

Dejo el código que usé para probar:

-----------------------------
#include <stdio.h>
#include <string.h>

int main(void)
{
   char *cad1 = "Hola ";
   char *cad2;

   printf("Cadena: %s\n", strcat(cad2, cad1));

	    

   return 1;
}
--------------------------------

Y esté es el mensaje de la exepción:

***********************************
Unhandled exception at 0x77c460c1 in a.exe: 0xC0000005: Access violation writing location 0x0040135a. 
***********************************

Y código en ensamblador donde "truena":

*********************************
77C460C1  mov         dword ptr [edi],edx 
*********************************


¿Algúna idea?

De antemano muchas gracias...


 
_______________________________________________
Lista de correo Cconclase Cconclase en listas.conclase.net
http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ


Sonda S.A.
La información contenida en este correo electrónico, así como en cualquiera de sus archivos adjuntos, es confidencial y está dirigida exclusivamente a él o los destinatarios indicados. Cualquier uso, reproducción, divulgación o distribución por otras personas distintas de él o los destinatarios está estrictamente prohibida. Si ha recibido este correo por error, por favor notifíquelo inmediatamente al remitente y bórrelo de su sistema sin dejar copia del mismo. SONDA no acepta responsabilidad alguna por cualquier pérdida o daño como consecuencia, directa o indirecta, del uso indebido de este e-mail o de los archivos adjuntos al mismo.




Más información sobre la lista de distribución Cconclase