Mutta onko mahdollista tehdä makro TO_OEM, joka jo käännösvaiheessa muuntaisi merkit:
windows-1252 -> chcp850 ?
Siis sitä käytettäisiin näin:
printf( TO_OEM( "hyvää yötä, hÄrÖ !\n") );
linkit:
http://en.wikipedia.org/wiki/Windows_1252
http://en.wikipedia.org/wiki/Code_page_850
Allooleva ohjelma toimii ainakin:
Borland C 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
---------------------------------------- ohjelman lähdekoodi alkaa -------------------------------
/*
näin saadaan oikein toimivat ä ja ö -kirjaimet win32 -konsolisovellukseen ( chcp 850 tai chcp 437 )
ä 132 = \x84
ö 148 = \x94
Ä 142 = \x8e
Ö 153 = \x99
Lisää koodeja täältä:
http://en.wikipedia.org/wiki/Code_page_850
*/
#include
#include
#include
#include
int main(int argc, char *argv[])
{
int ParamCount, i;
ParamCount = argc-1;
printf("\n");
printf("argumenttien m\x84\x84r\x84: %d\n", ParamCount);
printf("\n");
for (i=1; i
konsolisovellus, ä ja ö, komentoriviparametrit
C_Opiskelija
2
236
Vastaukset
- pikku vinkkeja
On mahdollista, mutta ei ihan yksinkertaista.
Jos käytät C-kieltä, niin TO_OEM:n pitää huolehtia muistista oikein, esim. käyttämällä ennakolta varattua merkkijonomuuttujaa, minne kopioi muunnetun merkkijonon (ja tarkistaa ylivuodot...).
C :lla voit palauttaa TO_OEM:stä string-tyyppisen muuttujan avulla esim.
std::string TO_OEM_apu(const char* arg)
{
std::string s = arg;
// muunna ensin s:n merkit ensin for-silmukassa
return s;
}
#define TO_OEM(a) TO_OEM_apu(a).c_str()- pikku vinkkeja
Jaahas, taas aaltosulut tippuivat yllä. Mutta osaat varmaan lisätä ne itse.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 937748
- 403722
Lähetä terveisesi kaipaamallesi henkilölle
Vauva-palstalta tuttua kaipaamista uudessa ympäristössä. Kaipuu jatkukoon 💘1021876- 241160
Taas ryssittiin oikein kunnolla
r….ä hyökkäsi Viroon sikaili taas ajattelematta yhtään mitään https://www.is.fi/ulkomaat/art-2000011347289.html321013Valtimon Haapajärvellä paatti mäni nurin
Ikävä onnettomuus Haapajärvellä. Vene hörpppi vettä matkalla saaren. Veneessä ol 5 henkilöä, kolme uiskenteli rantaan,28973Rakastuminenhan on psykoosi
Ei ihme että olen täysin vailla järkeä sen asian suhteen. Eipä olis aikoinaan arvannut, että tossa se tyyppi menee, jonk53827Olisinko mä voinut käsittää sut väärin
Nyt mä kelaan päässäni kaikkea meidän välillä tapahtunutta. Jos mä sit kuitenkin tulkitsin sut väärin? Se, miten sä käyt31772Tähän vaivaan ei auta kuin kaksi asiaa
1. Tapaaminen uudestaan tai 2. Dementia Anteeksi kun olen olemassa🙄60739TÄSTÄ TAITAA TULLA SUOMEN HISTORIAN SUURIN USKONNONVAPAUDEN OIKEUDENKÄYNTI.
Sinun täytyy hyväksyä se että jos sinä vetoat uskonnonvapauteen, silloin sinun tulee antaa myös muille vastaava vapaus o268703