miten esim. debianissa, ubuntussa, tai Red Hat linuxissa
selvitetään konsolin merkkikoodaus C -lähdekoodissa ?
siis millä funktiokutsulla saa selville, mikä on konsolisovelluksen ajonaikainen merkkikoodaus?
Vastaus voi siis olla esim:
UTF-8 (oletus uusissa ja uudehkoissa linux -distroissa)
tai
ISO-8859-1 (oletus hieman vanhemmissa linux -distroissa)
jos vastaus ei ole tekstimuotoinen, vaan joku koodattu systeemi,
niin kaivataan myös tietoa, missä lähdekooditiedostossa on vastaavat määritykset, esim:
#define UTF_8 1
#define ISO_8859_1 2
jne.
ylläolevat siis vain esimerkkejä, todelliset numeroarvot voivat olla jotain muuta !
Tieto on konsolisovelluksessa oleellinen, jos haluaa tehdä sellaisen konsolisovelluksen, joka on yhteensopiva niin uusien kui vanhojenkin
linux -distrojen kanssa, mutta silti myös ä ja ö -kirjaimet näkyvät oikein.
oletetaan, että konsolisovellus tehdään C -kielellä.
selvitetään konsolin merkkikoodaus C -lähdekoodissa ?
siis millä funktiokutsulla saa selville, mikä on konsolisovelluksen ajonaikainen merkkikoodaus?
Vastaus voi siis olla esim:
UTF-8 (oletus uusissa ja uudehkoissa linux -distroissa)
tai
ISO-8859-1 (oletus hieman vanhemmissa linux -distroissa)
jos vastaus ei ole tekstimuotoinen, vaan joku koodattu systeemi,
niin kaivataan myös tietoa, missä lähdekooditiedostossa on vastaavat määritykset, esim:
#define UTF_8 1
#define ISO_8859_1 2
jne.
ylläolevat siis vain esimerkkejä, todelliset numeroarvot voivat olla jotain muuta !
Tieto on konsolisovelluksessa oleellinen, jos haluaa tehdä sellaisen konsolisovelluksen, joka on yhteensopiva niin uusien kui vanhojenkin
linux -distrojen kanssa, mutta silti myös ä ja ö -kirjaimet näkyvät oikein.
oletetaan, että konsolisovellus tehdään C -kielellä.
Vastaukset 3
Vanhimmat
Eikö se määrätä sovelluksen koodissa. Päättten merkistö määrätään päätteen menusta.
system("echo $LC_CTYPE > foo");
Sitten katsot tiedostosta foo.
Kaikista kätevin olisi käyttää pelkästään alkuperäistä IBM ASCII -näppäinmerkkejä, jos ei nyt aivan egyptin hieroglyfejä tarvitsisi decoodata, tuossa pitää vain muuttaa skandit oikeisiin paikkoihin merkistössä, on joo IBM ASCIISSa nämä.