Título: Ayuda con basura en fread Publicado por: harry_the_blogger en 1 Abril 2016, 20:03 pm Hola, amigos, estoy haciendo pequeños experimentos, y necesito leer un archivo.
Resulta que el codigo lo que hace es cargar el archivo en una memoria dinamica a traves de un puntero, pero al usar fread capta algo como "COM;<" al final del archivo, cosa que no es verdad. No sé de donde aparece, pero les dejo el codigo, por si pueden ayudar, gracias. Código
http://subefotos.com/ver/?dba9f455a39df69e79173249a0764a0fo.jpg (http://subefotos.com/ver/?dba9f455a39df69e79173249a0764a0fo.jpg) Título: Re: Ayuda con basura en fread Publicado por: class_OpenGL en 1 Abril 2016, 20:19 pm Yo creo que el problema reside en que fread no pone un carácter de fin de cadena al final de la cadena 'content'. Para solucionar esto, primero en la memoria dinámica tendrías que darle un byte más y luego añadir un carácter de fin de cadena (el cual es '\0') para que así el programa sepa el fin de la cadena.
Título: Re: Ayuda con basura en fread Publicado por: harry_the_blogger en 2 Abril 2016, 14:54 pm Gracias openGL, probé la solucion y sirvio. Hay veces que eso no pasa, como en otro programa que tengo.
Título: Re: Ayuda con basura en fread Publicado por: class_OpenGL en 2 Abril 2016, 15:30 pm No pasa porque por casualidad, justo después de tu cadena (en la memoria) hay un carácter nulo (el que indica fin de cadena). En un ejecutable suelen haber muchos de estos caracteres, por eso no es raro que te haya coincidido :D
|