Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/09/2015, 10:53
aleixen
 
Fecha de Ingreso: abril-2015
Mensajes: 13
Antigüedad: 9 años, 8 meses
Puntos: 0
Pregunta Inicializar archivo con '/0'

Buenas!

Tengo un archivo de un tamano ej 100 bytes, y me gustaria inicializar cada byte con el caracter '\0', a fin de que cuando lea un dato sepa cuando deje de leer.

He intentado algo como esto pero no me funciona::

Código:
int main(void) {

FILE* archivo_swap = fopen(RUTA_ARCHIVO,"wb");

	int i;
	int tamanio= 100;

	for(i=0;i<tamanio;i++){

		fputc('\0',archivo_swap);

	}

	close(archivo_swap);


return 0;

}
Bueno, luego en otro main escribo hola, y al abrir una terminal y ejecutar cat archivo, me muesta hola seguido de muchos 0, esta bien esto??, asi deberia de verse el \0?

Otra cosa, ejecuto otro programa para leer el contenido, y hago un for en el cual deberia de leer hasta encontrar el '\0' que indique el fin de cadena, al ejecutarlo por la terminal me devuelve un simbolo de ? y no la cadena escrita.

Tambien me gustaria cada vez que escribo en el archivo poder terminar con un byte de '\0', con el mismo fin de saber cundo termina la cadena

Última edición por aleixen; 14/09/2015 a las 12:44