Ich habe dieses Stück Code, das mein Wissens all C. ist eine Herausforderung Hier hat ich:Was stimmt nicht mit printf ("% llx")?
int main(void){
unsigned long long int massage ;
scanf("%llX", &massage); //input: 0x1234567890abcdef
printf("%llX", massage);
return 0;
}
Auf meinem „64bit - Corei5 - Fedora - GCC“ druckt es genau, was ich es zugeführt. aber auf meinem Buddy-System (32bit, MS XP, MinGW) druckt es 90ABCDEF
. Ich verstehe nicht warum. weiß jemand?
BTW: sizeof(unsigned long long int)
auf seinem System ist 8.
Er benutzt MSVC oder so? Sie haben nicht standardmäßige 'printf'- und' scanf'-Formate. Sollte in der Dokumentation des Compilers zu finden sein. –
er verwendet MINGW. (bearbeitet die Frage) – Untitled
Verwendet MinGW eine eigene C-Bibliothek, oder benutzt sie die Windows-Bibliothek? Im letzteren Fall gelten die Nicht-Standardformate weiterhin. In ersterem keine Ahnung. –