¿Por qué ofstream inserta un byte 0x0D antes de 0x0A?

Estoy enviando una matriz de caracteres sin signo en C ++ usandoofstream fout("filename"); pero produce un carácter espurio en el medio. Esta es la parte del código que causa el problema:

for(int i = 0; i < 12; i++)
fout << DChuffTable[i];

y esta es la definición de la matriz:

unsigned char DChuffTable[12] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B};

En el archivo de salida me sale un falso0x0D Entre0x09 y0x0A. Verifiqué la matriz en modo de depuración justo antes de que se imprima y no cambie. Por favor, dime qué piensas de este problema.

Respuestas a la pregunta(1)

Su respuesta a la pregunta