c - printf udskriver ikke det samme som fprintf

Indlæg af Hanne Mølgaard Plasc

Problem




    Dette spørgsmål har allerede et svar her:

    

            

  •             (C) Program, der udskriver alle CP850 tegn på skærmen og i en fil, har forskellige udgange
                    
                        1 svar
                    

            

  •     

Bedste reference


Ç er 128 i kode side 437 eller 850 osv., Kodninger, som nogle gange bruges af Windows-konsoller. Den samme kode 128 er i kode side 1252 eller 1250, kodninger, der ofte bruges af Windows grafiske applikationer. Den eneste rimelige måde at gå videre på er at have dine konsoller bruge samme kodning som de grafiske applikationer; for dette kan du bruge kommandoen chcp 1252 (ch ange c ode p alder) i konsollen ved kommandoprompten. /questions/41614001/c-program-that-prints-all-cp850-characters-on-the-screen-and-in-a-file-have-di


(Bemærk: at chcp skal være effektiv, skal konsollen bruge en TrueType-skrifttype som Lucida Console eller Consolas.)

Andre referencer 1


Din kommandolinje (konsol) og hvad du bruger til at vise filen, bruger forskellige kodninger.
Begge gange er byten 128 skrevet, men i en udvidet ASCII-variant (se også Wikipedia) fortolkes den som en C med cedilla,
mens en fælles Windows-kodning fortolker det som euro-symbolet. [10] [11] [12]