O mais atual (C ++ 0x). Gostaria de saber se o comitê C fará novamente uma nova versão do padrão C um ano após o lançamento do padrão C ++, apenas para ofendê-los. : - \ sprintf para _int64 não assinado
Estou tendo o seguinte código. a saída do segundo% d no sprintf é sempre mostrada como zero. Eu acho que estou especificando especificadores errados. Alguém pode me ajudar na obtenção de escrever string com valores corretos. E isso tem que ser alcançado no padrão posix. Obrigado pelas contribuições
void main() {
unsigned _int64 dbFileSize = 99;
unsigned _int64 fileSize = 100;
char buf[128];
memset(buf, 0x00, 128);
sprintf(buf, "\nOD DB File Size = %d bytes \t XML file size = %d bytes", fileSize, dbFileSize);
printf("The string is %s ", buf);
}
Resultado:
The string is
OD DB File Size = 100 bytes XML file size = 0 bytes