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

251

    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. 95
      3571
    2. Putin lähti takki auki sotaan....

      Luuli, että kolmessa päivässä hoidetaan, nyt on mennyt 3,5 vuotta eikä voitosta tietoakaan. Kaiken lisäksi putin luuli,
      Maailman menoa
      75
      3135
    3. SDP ylivoimainen ykkönen

      En ole koskaan viitsinyt käydä äänestämässä, mutta nyt SDP:n etumatka on niin kutkuttava, että pakkohan se on vaivautua.
      Maailman menoa
      83
      2588
    4. Suomalainen lähti ilman takkia sotaan

      Malli oli "kajander", johon kuului pelkästään kokardi, ja sotilaan itse metsästä katkoma puukeppi ryssien huitomiseen.
      Maailman menoa
      5
      2386
    5. Polttomoottoriauto on köyhän merkki

      Kun ei ole varaa ostaa sähköautoa, niin joutuu köyhän autoa käyttämään.
      Maailman menoa
      215
      2229
    6. Patteriauton ovia ei saatu auki - kuljettaja koki hirvittävän kuoleman!

      ”Oviongelma johti kuskin kuolemaan kolarissa – tämä ratkaisu saatetaan kieltää kokonaan Sivulliset pyrkivät tempomaan a
      Maailman menoa
      30
      2131
    7. Harmittaa ettei paluuta entiseen enää ole

      Paluuta entiseen ei ole koska pilasit kaiken.
      Ikävä
      95
      918
    8. Mies älä

      Odota enää vaan toimi. Pieni vinkkivitonen 🫰💥
      Ikävä
      41
      900
    9. Mä tiedän

      Että sä tiedät, että mä tiedän, että sä tiedät. Me molemmat tiedetään. Onko näin?
      Ikävä
      52
      796
    10. Haapaveille jotain uutta!

      Huoltoasema Haapavein keskustaan tulossa. Semmoista Jeppasissa jaappasevat.
      Haapavesi
      16
      760
    Aihe