Suomi24 Keskustelussa on viikonlopun aikana ollut poikkeuksellisen paljon bottien automaattiseti luomia kommentteja. Pahoittelemme tästä aiheutunutta harmia. Olemme kiristäneet Keskustelujen suojausasetuksia ja kommentointi on toistaiseksi estetty ulkomailta.

konsolisovellus, ä ja ö, komentoriviparametrit

C_Opiskelija

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

2

138

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 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

    1. Millä voin

      Hyvittää kaiken?
      Ikävä
      69
      2247
    2. Jotain puuttuu

      Kun en sinua näe. Et ehkä arvaisi, mutta olen arka kuin alaston koivu lehtiä vailla, talven jäljiltä, kun ajattelen sinu
      Ikävä
      101
      2073
    3. Haluan sut

      Haluatko sinä vielä mut?
      Ikävä
      78
      1688
    4. Haluaisin aidosti jo luovuttaa ja unohtaa

      Ei tästä mitään tule koskaan.
      Ikävä
      78
      1506
    5. Hei A, osaatko

      sanoa, miksi olet ihan yhtäkkiä ilmestynyt kaveriehdotuksiini Facebookissa? Mitähän kaikkea Facebook tietää mitä minä en
      Ikävä
      41
      1500
    6. Ampuminen Iisalmessa

      Älytöntä on tämä maailman meno.
      Iisalmi
      10
      1397
    7. Pohjola kadulla paukuteltu

      Iltasanomissa juttua.
      Iisalmi
      31
      1364
    8. 52
      1258
    9. Synnittömänä syntyminen

      Helluntailaisperäisillä lahkoilla on Raamatunvastainen harhausko että ihminen syntyy synnittömänä.
      Helluntailaisuus
      62
      1200
    10. Mitä tämä tarkoittaa,

      että näkyy vain viimevuotisia? Kirjoitin muutama tunti sitten viestin, onko se häipynyt avaruuteen?
      Ikävä
      28
      1179
    Aihe