Amerikos nacionalinis standartų institutas(Anglų) A merikietis n nacionalinis s tandardai i institutas, ANSI) yra Amerikos pramonės ir verslo grupių asociacija, kurianti prekybos ir komunikacijos standartus. Jis yra ISO ir IEC narys, atstovaujantis JAV interesams.

Istorija

ANSI iš pradžių buvo įkurta 1918 m., kai penkios inžinierių draugijos ir trys vyriausybinės agentūros įkūrė „Amerikos inžinerijos standartų komitetą“ ( AESC- Anglų. Amerikos inžinerijos standartų komitetas). 1928 m. komitetas tapo žinomas kaip Amerikos standartų asociacija. KAIP- Anglų. Amerikos standartų asociacija). 1966 m. ASA buvo reorganizuota ir tapo „Jungtinių Amerikos Valstijų standartų institutu“ ( USASI- Anglų. Jungtinių Amerikos Valstijų standartų institutas). Dabartinis pavadinimas buvo priimtas 1969 m.

Iki 1918 m. buvo penkios inžinierių draugijos, kurios dalyvavo kuriant techninius standartus:

  • Amerikos elektros inžinierių institutas (AIEE, dabar IEEE)
  • Amerikos mechanikos inžinierių draugija (ASME)
  • Amerikos civilinių inžinierių draugija (ASCE)
  • Amerikos kalnakasybos inžinierių institutas (AIME, dabar – Amerikos kalnakasybos, metalurgijos ir naftos inžinierių institutas)
  • Amerikos bandymų ir medžiagų draugija (dabar ASTM)

1916 m. Amerikos elektros inžinierių institutas (dabar IEEE) ėmėsi iniciatyvos sujungti šių organizacijų pastangas ir sukurti nepriklausomą nacionalinę įstaigą, koordinuojančią standartų kūrimą, nacionalinių standartų derinimą ir tvirtinimą. Minėtos penkios organizacijos tapo pagrindinėmis Jungtinės inžinierių draugijos (United Engineering Society – UES) narėmis, vėliau JAV karo departamentas, karinis jūrų laivynas (1947 m. sujungtas į JAV gynybos departamentą) ir komercija buvo pakviesti dalyvauti kaip steigėjai.

1931 m. organizacija (1928 m. pervadinta į ASA) tapo JAV Nacionalinio Tarptautinės elektrotechnikos komisijos (IEC) komiteto, kuris buvo įkurtas 1904 m., siekiant sukurti elektros ir elektroninės inžinerijos standartus, dalimi.

Nariai

ANSI nariai yra vyriausybinės agentūros, organizacijos, akademinės ir tarptautinės organizacijos bei asmenys. Iš viso institutas atstovauja daugiau nei 270 000 įmonių ir organizacijų bei 30 milijonų specialistų visame pasaulyje /

Veikla

Nors pati ANSI nekuria standartų, institutas prižiūri standartų kūrimą ir naudojimą, akredituodamas standartų kūrimo organizacijų procedūras. ANSI akreditacija reiškia, kad standartus kuriančių organizacijų naudojamos procedūros atitinka instituto atvirumo, pusiausvyros, sutarimo ir tinkamo proceso reikalavimus.

ANSI taip pat priskiria tam tikrus standartus kaip Amerikos nacionalinius standartus arba ANS, kai institutas nustato, kad standartai buvo sukurti sąžiningoje, prieinamoje ir įvairių suinteresuotųjų šalių poreikius atitinkančioje aplinkoje.

Tarptautinė veikla

Be JAV standartizacijos veiklos, ANSI skatina tarptautinį JAV standartų naudojimą, palaiko JAV politinę ir techninę poziciją tarptautinėse ir regioninėse standartizacijos organizacijose ir skatina tarptautinius standartus priimti kaip nacionalinius standartus.

Institutas yra oficialus JAV atstovas dviejose pagrindinėse tarptautinėse standartizacijos organizacijose – Tarptautinėje standartizacijos organizacijoje (ISO) kaip narys steigėjas ir Tarptautinėje elektrotechnikos komisijoje (IEC) per JAV nacionalinį komitetą (USNC). ANSI dalyvauja beveik visose techninę programą ISO ir IEC ir valdo daugelį pagrindinių komitetų ir pogrupių. Daugeliu atvejų JAV standartai pateikiami ISO ir IEC per ANSI arba USNC, kur jie visi arba iš dalies priimami kaip tarptautiniai standartai.

ISO ir IEC standartų pripažinimas JAV standartais išaugo nuo 0,2 % 1986 m. iki 15,5 % 2012 m. gegužės mėn.

Standartizacijos kryptys

Institutas valdo devynias standartizacijos grupes:

  • ANSI Tėvynės gynybos ir saugumo standartizacijos bendradarbiavimas (HDSSC)
  • ANSI nanotechnologijų standartų skydelis (ANSI-NSP – ANSI nanotechnologijų standartų skydelis)
  • ID vagysčių prevencijos ir asmens tapatybės dokumento valdymo standartų skydelis (IDSP – ID vagysčių prevencijos ir asmens tapatybės dokumento valdymo standartų skydas)
  • ANSI energijos vartojimo efektyvumo standartizacijos koordinavimo bendradarbiavimas (EESCC)
  • Branduolinės energijos standartų koordinavimo bendradarbiavimas (NESCC-Branduolinės energijos standartų koordinavimo bendradarbiavimas)
  • Elektrinių transporto priemonių standartų skydelis (EVSP)
  • ANSI-NAM cheminių medžiagų reguliavimo tinklas
  • ANSI biokuro standartų koordinavimo grupė
  • Sveikatos priežiūros informacinių technologijų standartų grupė (HITSP)
  • Amerikos vamzdynų ir mašinų sertifikavimo agentūra

Kiekviena grupė užsiima savanoriškų standartų, susijusių su šiomis sritimis, nustatymu, koordinavimu ir derinimu. 2009 m. ANSI ir (NIST) sudarė Branduolinės energijos standartų koordinavimo bendradarbiavimo organizaciją (NESCC). NESCC yra bendradarbiavimo iniciatyva, kuria siekiama nustatyti ir patenkinti dabartinį branduolinės pramonės standartų poreikį.

Standartai

Iš instituto priimtų standartų žinomi šie:

Priešingai populiariai klaidingai nuomonei, ANSI nepriėmė 8 bitų kodo puslapių standartų, nors dalyvavo kuriant ISO-8859-1 kodavimą ir galbūt kai kuriuos kitus.

Pastabos

  1. Apie ANSI
  2. RFC
  3. ANSI: istorinė apžvalga (neterminuota) . ansi.org. Žiūrėta 2016 m. spalio 31 d.
  4. ANSI istorija

Verta paminėti, kad visi ANSI slėgio klasių žymėjimai turi tam tikrą reikšmę, būtent slėgio vertę, tačiau tik kituose vienetuose, nei esame įpratę. Visi skaičiai po ANSI nurodo vardinio (vardinio) slėgio reikšmę: ANSI 150, ANSI 300, ANSI 600, ANSI 900, ANSI 1500, ANSI 2500 ir ANSI 4500. Pavyzdžiui, ANSI 150 reiškia, kad vardinis slėgis yra 15 psi. Anglų kalba tai parašyta kaip Pound-force per Square Inch arba sutrumpintai PSI.

Atitinkamai, tokiu būdu galima atlikti nepriklausomą konvertavimą iš svarų kvadratiniame colyje į barą (100 kPa) arba MPa. Norėdami savarankiškai apskaičiuoti tikslų, turėsite žinoti, kad 1 PSI \u003d 6894,76 Pa. Visi ANSI slėgio skaičiavimai barais ir paskaliais gali būti atliekami, kai yra laiko ir poreikis tiksliems duomenims, tuo pačiu metu dauguma standartinių ANSI slėgio klasės verčių jau turi standartines bar ir MPa reikšmes. Norėdami supaprastinti, mes sudarėme trumpą lentelę, skirtą jūsų nuorodai:

ANSI slėgio klasių lentelė su konvertavimu į Bar ir MPa

ANSI slėgio klasė

Kartais net gana patyręs specialistas iš karto nepasakys, kokia konkreti slėgio ar ilgio vertė vienoje sistemoje atitinka reikšmes kitoje kiekių sistemoje.

Į palengvinti Norėdami atlikti šią užduotį, siūlome lenteles apie slėgio ir ilgio ryšį Europos ir Amerikos sistemose su mažomis paaiškinimų. Bet pirmiausia keli žodžiai apie pačius standartus.


DIN yra vokiškas standartas (reiškia Deutsches Institut für Normung, tai yra, sukurta Vokietijos standartizacijos instituto), kuri yra sukurta griežtai laikantis Tarptautinės standartizacijos organizacijos - ISO (Tarptautinės standartizacijos organizacijos) nuostatų.


ANSI yra Jungtinėse Amerikos Valstijose priimtas standartas. reiškia Amerikos nacionalinis standartų institutas, kuris yra Amerikos nacionalinio standartų instituto standartas.

Atitinkamai, ANSI standartus nustato ši institucija, ir toli ne visada tarp standartų DIN ir ANSI gali tiksliai atsekti laikymasisįvairiose srityse.

Slėgio vienetų konvertavimas iš ANSI į DIN

Čia viskas paprasta: jei pagal standartą ANSI priešais slėgį yra skaičius 150 - tai reiškia, kad vardinis (kam suprojektuotas vožtuvas) slėgis yra 20 barų, 300 - 50 barų ir kt. Didžiausia vertė ANSI klasė– 2500 pagal europinį standartą prilygs 420 barų DIN.


Naudojant šią lentelę, nesunku konvertuoti slėgio vertes ir atvirkščiai: nuo DIN in ANSI, nors mūsų inžinieriams reikia daug daugiau ne taip dažnai.

Ilgio vienetų konvertavimas iš amerikietiškos sistemos į europietišką (rusišką)

Kaip žinoma, amerikiečių viskas matuojama coliais ir pėdomis, o mes europiečių- milimetrai, centimetrai ir metrai, tai yra, kaip ir dauguma pasaulio šalių, gyvename metrinė vienetų sistema.


Kaip konvertuoti colius į milimetrus? Tiesą sakant, čia taip pat nėra nieko sudėtingo, tiesiog atminkite, kad 1 colis yra lygus 25,4 mm. Tačiau dažnai skaitmuo po kablelio nepaisyti o jei reikia, nurodykite tai 1 colis = 25 mm.

Taigi, jei, pavyzdžiui, įleidimo angos skerspjūvis yra 2 coliai pagal amerikietišką matų sistemą, tada, pagal aukščiau pateiktą taisyklę, išvertę šią vertę į mūsų matų sistemą, gauname 50 mm arba, tiksliau, 51 mm (apvalinimas 50,8 pagal taisykles) .

Belieka pridurti, kad skersmuo in techninis charakteristikos pažymėtos lotyniškomis raidėmis DN ir dažnai nurodoma colių, o spaudimas žymimas raidėmis PN ir dažniausiai nurodomas barai- bet kuriuo atveju mes naudojame būtent šį žymėjimą kaip daugiausia patogus.

Ir sekanti lentelė pades skaičiuoji ne tik tiksli milimetrų skaičius viename colyje (tūkstantosios milimetro dalies tikslumu), tačiau tai taip pat padės išsiaiškinti, kiek milimetrų yra, pavyzdžiui, 2,5 colio.

Norėdami tai padaryti, randame 2 stulpelį "" (2 coliai), o kairėje ieškome reikšmės 1/2. Iš viso 2,5 colio = 63,501 mm, kurį galima suapvalinti iki 64 mm, ir, pavyzdžiui, 6,25 colio (ty 6 ir 1/4) = 158,753 mm arba 159 mm.


Coliai "" iki milimetrų



Reg.ru: domenai ir priegloba

Didžiausias registratorius ir prieglobos paslaugų teikėjas Rusijoje.

Daugiau nei 2 milijonai domenų vardų.

Reklama, paštas domenui, sprendimai verslui.

Savo pasirinkimą jau padarė daugiau nei 700 tūkstančių klientų visame pasaulyje.

* Užveskite pelės žymeklį, kad pristabdytumėte slinkimą.

Atgal į priekį

Kodavimai: naudinga informacija ir trumpa retrospektyva

Nusprendžiau parašyti šį straipsnį kaip nedidelę apžvalgą kodavimo klausimu.

Mes suprasime, kas apskritai yra kodavimas, ir šiek tiek paliesime istoriją, kaip jie iš esmės atsirado.

Pakalbėsime apie kai kurias jų ypatybes, taip pat atsižvelgsime į dalykus, kurie leidžia sąmoningiau dirbti su koduotėmis ir išvengti vadinamųjų kodų atsiradimo svetainėje. krakozjabrovas, t.y. neįskaitomi simboliai.

Taigi eime...

Kas yra kodavimas?

Paprasčiau pasakius, kodavimas yra simbolių atvaizdavimo lentelė, kurią galime matyti ekrane, pagal tam tikrus skaitmeninius kodus.

Tie. kiekvienas simbolis, kurį įvedame iš klaviatūros arba matome monitoriaus ekrane, yra užkoduotas tam tikra bitų seka (nuliai ir vienetai). 8 bitai, kaip tikriausiai žinote, yra lygūs 1 baitui informacijos, bet apie tai vėliau.

Pačių simbolių išvaizdą lemia šrifto failai kurie yra įdiegti jūsų kompiuteryje. Todėl teksto rodymo ekrane procesą galima apibūdinti kaip nuolatinį nulių ir vienetų sekų derinimą su kai kuriais konkrečiais simboliais, kurie yra šrifto dalis.

Galima laikyti visų šiuolaikinių koduočių pradininku ASCII.

Ši santrumpa reiškia Amerikos standartinis informacijos mainų kodas(Amerikietiška standartinė spausdinamų simbolių ir kai kurių specialių kodų kodavimo lentelė).

tai vieno baito kodavimas, kuriame iš pradžių buvo tik 128 simboliai: lotyniškos abėcėlės raidės, arabiški skaitmenys ir kt.


Vėliau jis buvo išplėstas (iš pradžių naudojo ne visus 8 bitus), todėl atsirado galimybė naudoti ne 128, o 256 (nuo 2 iki 8) skirtingus simbolius, kuriuos galima užkoduoti viename informacijos baite.

Šis patobulinimas leido pridėti prie ASCII tautinių kalbų simboliai, be jau esančios lotyniškos abėcėlės.

Dėl to, kad pasaulyje taip pat yra daug kalbų, yra daug išplėstinio ASCII kodavimo parinkčių. Manau, kad daugelis iš jūsų girdėjote apie tokį kodavimą kaip KOI8-R taip pat yra išplėstinė ASCII koduotė, skirtas dirbti su rusiškais rašmenimis.

Kitu žingsniu kuriant koduotes galima laikyti vadinamųjų atsiradimą ANSI koduotės.

Iš esmės jie buvo vienodi išplėstinės ASCII versijos, tačiau iš jų buvo pašalinti įvairūs pseudografiniai elementai ir pridėti tipografiniai simboliai, kuriems anksčiau neužteko „laisvų vietų“.

Tokios ANSI kodavimo pavyzdys yra gerai žinomas Windows-1251. Be tipografinių simbolių, ši koduotė taip pat apėmė rusų kalbai artimų kalbų (ukrainiečių, baltarusių, serbų, makedonų ir bulgarų) abėcėlių raides.


ANSI kodavimas yra bendras pavadinimas. Tiesą sakant, tikrasis kodavimas naudojant ANSI bus nustatomas pagal tai, kas nurodyta jūsų registre Operacinė sistema Windows. Rusų kalba tai bus Windows-1251, tačiau kitomis kalbomis tai bus kitokio tipo ANSI.

Kaip suprantate, aibė koduočių ir vieno standarto nebuvimas nieko gero neatnešė, o tai lėmė dažnus susitikimus su vadinamaisiais. krakozyabry- neįskaitomas beprasmis simbolių rinkinys.

Jų atsiradimo priežastis paprasta – taip ir yra pabandykite rodyti simbolius, užkoduotus viena kodavimo lentele, naudodami kitą kodavimo lentelę.

Kurdami internetą galime susidurti su klaidomis, kai, pavyzdžiui, Rusiškas tekstas per klaidą išsaugomas netinkama koduote, kuri naudojama serveryje.

Žinoma, tai ne vienintelis atvejis, kai galime gauti neįskaitomo teksto – čia yra daugybė variantų, ypač kai pagalvoji, kad yra ir duomenų bazė, kurioje informacija taip pat saugoma tam tikra koduote, yra duomenų bazės ryšys kartografavimas ir kt.

Visų šių problemų atsiradimas buvo paskata kurti kažką naujo. Tai turėjo būti koduotė, galinti užkoduoti bet kurią pasaulio kalbą (juk su vieno baito koduotėmis, su visu noru, neįmanoma aprašyti visų simbolių, tarkime, kinų, kur aiškiai daugiau nei 256), bet kokie papildomi specialieji simboliai ir tipografija.

Žodžiu, kurti reikėjo universalus kodavimas, kuris kartą ir visiems laikams išspręstų klaidų problemą.

Unikodas – universalus teksto kodavimas (UTF-32, UTF-16 ir UTF-8)

Patį standartą 1991 metais pasiūlė ne pelno organizacija „Unicode konsorciumas“(Unicode Consortium, Unicode Inc.), o pirmasis jo darbo rezultatas buvo kodavimo sukūrimas UTF-32.

Beje, santrumpa UTF reiškia Unicode transformacijos formatas(Unicode konversijos formatas).

Šioje koduotėje, norint užkoduoti vieną simbolį, turėjo būti naudojama tiek, kiek 32 bitai, t.y. 4 baitai informacijos. Jei palyginsime šį skaičių su vieno baito koduotėmis, padarysime paprastą išvadą: norint užkoduoti 1 simbolį šioje universalioje koduotėje, jums reikia 4 kartus daugiau bitų, kuris „sveria“ failą 4 kartus.

Taip pat akivaizdu, kad simbolių skaičius, kurį galima apibūdinti naudojant šią koduotę, viršija visas pagrįstas ribas ir yra techniškai apribotas iki 2 iki 32 laipsnio. Akivaizdu, kad tai buvo akivaizdus failų svorio perteklius ir švaistymas, todėl šis kodavimas nebuvo plačiai naudojamas.

Jį pakeitė nauja plėtra - UTF-16.

Kaip rodo pavadinimas, šioje koduotėje yra užkoduotas vienas simbolis nebe 32 bitai, o tik 16(t. y. 2 baitai). Akivaizdu, kad dėl to bet kuris simbolis yra dvigubai „lengvesnis“ nei UTF-32, bet taip pat dvigubai „sunkesnis“ nei bet kuris simbolis, užkoduotas naudojant vieno baito koduotę.

UTF-16 kodavimui galimų simbolių skaičius yra ne mažesnis kaip 2 iki 16 laipsnio, t.y. 65536 simboliai. Atrodo, kad viskas gerai, be to, galutinė UTF-16 kodo erdvės reikšmė buvo išplėsta iki daugiau nei 1 milijono simbolių.

Tačiau šis kodavimas nevisiškai patenkino kūrėjų poreikius. Tarkime, jei rašote naudodami tik lotyniškus simbolius, tada perėjus nuo išplėstinės ASCII kodavimo versijos į UTF-16, kiekvieno failo svoris padvigubėjo.

Kaip rezultatas, dar kartą buvo bandoma sukurti kažką universalaus, ir tai tapo gerai žinoma UTF-8 koduote.

UTF-8- tai yra kelių baitų simbolių kodavimas su kintamu simbolių ilgiu. Žvelgiant į pavadinimą, pagal analogiją su UTF-32 ir UTF-16 galite pagalvoti, kad vienam simboliui koduoti naudojami 8 bitai, tačiau taip nėra. Tiksliau, ne visai taip.

Taip yra todėl, kad UTF-8 užtikrina geriausią suderinamumą su senesnėmis sistemomis, kuriose buvo naudojami 8 bitų simboliai. Iš tikrųjų naudojamas UTF-8 kodavimas vienam simboliui nuo 1 iki 4 baitų(hipotetiškai galimas iki 6 baitų).

UTF-8 visi lotyniški simboliai yra užkoduoti 8 bitais, kaip ir ASCII koduotėje.. Kitaip tariant, pagrindinė ASCII kodavimo dalis (128 simboliai) persikėlė į UTF-8, leidžiantį jų atvaizdavimui „išleisti“ tik 1 baitą, išlaikant kodavimo universalumą, dėl kurio viskas ir buvo pradėta.

Taigi, jei pirmieji 128 simboliai yra užkoduoti 1 baitu, tai visi kiti simboliai jau yra užkoduoti 2 ar daugiau baitų. Visų pirma, kiekvienas kirilicos simbolis yra užkoduotas tiksliai 2 baitais.

Taip gavome universalų kodavimą, leidžiantį aprėpti visus įmanomus simbolius, kuriuos reikia rodyti be „sunkesnių“ failų be reikalo.

Su MK ar be MK?

Jei dirbote su teksto redaktoriai(pavyzdžiui, naudojant kodo redaktorius). Notepad++, phpDesigner, greitas PHP ir pan., tada tikriausiai atkreipė dėmesį į tai, kad nustatant kodavimą, kuriuo bus kuriamas puslapis, dažniausiai galima pasirinkti 3 variantus:

ANSI
-UTF-8
- UTF-8 be BOM


Iš karto pasakysiu, kad rinktis visada verta paskutinis variantas - UTF-8 be BOM.

Taigi, kas yra BOM ir kodėl mums jos nereikia?

BOM reiškia Baitų eilės žyma. Tai yra specialus Unicode simbolis, naudojamas endiškumui nurodyti. tekstinis failas. Pagal specifikaciją jo naudojimas yra neprivalomas, bet jei BOM naudojamas, jis turi būti nustatytas tekstinio failo pradžioje.

Į darbo detales nesigilinsime BOM. Mūsų nuomone, pagrindinė išvada yra tokia: Naudojant šį paslaugos simbolį kartu su UTF-8, programos negali normaliai nuskaityti kodavimo, todėl atsiranda scenarijaus klaidų.

ANSI yra simbolių rodymo standartas, sukurtas Amerikos nacionalinio standartų instituto (kodas 1251). ANSI standartas kiekvienam simboliui pavaizduoti naudoja tik vieną baitą, todėl ribojamas iki 256 simbolių, įskaitant skyrybos ženklus. Kodai nuo 32 iki 126 atitinka ASCII standartą. ASCII (kodas 688) buvo naudojamas DOS, ANSI – Windows.

Literatūra

    Archangelskis A.Ya. Programavimas C++ Builder 6. Red. BINOM, 2004 m.

    Archangelskis A.Ya. C++Builder6. Nuorodų vadovas. Maskva, red. BINOM, 2004 m.

    Kimmel P. Borland C++5 "BHV-Sankt Peterburgas, 2001 m.

    Klimova L.M. C++ Praktinis programavimas. Tipinių užduočių sprendimas. "KUDITS-IMAGE", M.2001.

    Kultin N. С/С++ užduotyse ir pavyzdžiuose. Sankt Peterburgas „BHV-Petersburg“, 2003 m.

    Pavlovskaya T.A. C/C++ Programavimas aukšto lygio kalba. Petras, Maskva-Sankt Peterburgas-… 2005 m

    Pavlovskaya T.A., Shchupak Yu.A. C++. Objektinis programavimas. Seminaras. SPb., Petras, 2005 m.

    Podbelskis V.V. C++ kalba Finansai ir statistika, Maskva, 2003 m.

    Poljakovas A. Yu., Brusentsevas V. A. Metodai ir algoritmai Kompiuterinė grafika Visual C++ pavyzdžiuose. SPb BHI-Peterburgas, 2003 m

    Savitch W. C++ kalbos objektinio programavimo kursas. Williams leidykla. Maskva-Sankt Peterburgas-Kijevas, 2001 m

    Wellin S. Kaip neprogramuoti C++. "Petras". Maskva-Sankt Peterburgas-Nižnij Novgorodas-Voronežas-Novosibirskas-Rostovas prie Dono-Jekaterinburgas-Samara-Kijevas-Charkovas-Minskas, 2004 m.

    Shieldtas G. Pilna nuoroda C++ kalboje. Red. Namas "Williams" Maskva-Sankt Peterburgas-Kijevas, 2003 m.

    Schildt G. Savarankiškas dėstytojas C/C++. Sankt Peterburgas, BHV-Peterburgas, 2004 m.

    Schildt G. Programuotojo vadovas C/C++ Red. Namas "Williams" Maskva-Sankt Peterburgas-Kijevas, 2003 m.

    Šimanovičius.L. С/С++ pavyzdžiuose ir užduotyse. Minskas, Naujos žinios, 2004 m.

    Sternas V. C++ pagrindai. Programinės įrangos inžinerijos metodai. Red. Lori.

Kodėl konsolės programoje vietoj rusiškų raidžių rodomos šiukšlės?

ir teisingai! Programos tekstas, kurį įvedėte savo vietinėje redagavimo priemonėje vizualinė studija, naudojant kodų puslapį 1251, o teksto išvestis konsolės programoje naudoja kodų puslapį 866. Ką daryti su šia gėda? Kaip žinote, iš bet kurios aklavietės yra bent 3 išėjimai. Apsvarstykime juos eilės tvarka.

    1. Išėjimas 1

Įveskite programos tekstą į bet kurios konsolės failų tvarkyklės redaktorių.

Bet kaip su sintaksės paryškinimu, pasirinktos funkcijos pagalbos rodymu naudojant F1 ir kitus mažus žavesius, kurie praskaidrina niūrų paprasto programuotojo gyvenimą? Ne, tai nėra mūsų pasirinkimas.

    1. Išėjimas 2

Jei pradėjote rašyti konsolės programą nuo nulio, ji gali jums tikti. Perrašykime savo mažąjį šedevrą taip:

#include "stdafx.h"

#include "windows.h"

int main (int argc, char* argv)

char s="Sveiki visi!";

printf("%s\n", s);

Raktinis žodis čia yra CharToOem – būtent ši funkcija konvertuos mūsų eilutę į norimą kodo puslapį. Su mūsų programos rezultatais dabar viskas gerai.

Tačiau iškyla kitas klausimas – ką daryti, jei reikia perkompiliuoti savo seną 100 000 eilučių DOS programą, parašytą Borland C++ 3.1 į Windows konsolės aplikaciją, kurioje tokia situacija pasitaiko kas antroje eilutėje. Bet jūs vis tiek turite jį pritaikyti prie MS kompiliatoriaus, taip pat norite optimizuoti keletą kodo dalių ...

Čia tikriausiai prasminga naudoti riterio judesį ta prasme