Citarsi yo tengo una cadena char *cadena, a la que he reservado memoria con malloc y le hago un memset(cadena, 0, strlen(cadena)), se llena toda la cadena de 0 no?
en caso de que el tamaño de la memoria reservada (malloc no inicializa a nada) sea igual al largo de la cadena si...
Citarsi yo luego lleno la mitad de la cadena, la otra mitad sigue con 0 como quedaria? asi ([h][una o][l][a][m][una u][n][d][una o][\0][0][0])? si le hago un printf por ejemplo, aparecen estos 0 o solo hasta \0?? y si le hago un fwrite??
printf %c imprimiria una "h"
printf %s imprimiria "hola mundo" (el \0 ni se imprimen, ya que las cadenas ascii terminan en \0)
etc
Saludos fiel user