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