Olgu, siin kรคsitleme kรตikehรตlmavat lรคhenemist Umlaute C-s.
Programmeerimiskeelte teekond on aastate jooksul arenenud ja C on sellel teekonnal olnud oluline teerajaja. Sageli puutuvad arendajad kodeerimisel kokku erinevate mรคrgikomplektidega ja รผks huvitav, kuid samas vรคljakutsuv aspekt, millega tegeleda, on Umlaute kasutamine C-programmeerimises.
Umlaute viitab kahele punktile, mis esinevad teatud germaani keele tรคishรครคlikute kohal, nimelt รค, รถ, รผ vรคiketรคhtedega ja ร, ร, ร suurtรคhtedega. Nende kasutamine tavalise programmeerimiskeele nagu C formaalses struktuuris vรตib olla รผsna keeruline รผlesanne.
Selle probleemi lahendus seisneb nende Umlaute mรคrkide ASCII vรครคrtuse mรตistmises ja selle รตiges rakendamises.
[h2]Tรถรถstuslik standardkodeering ja raamatukogud
C-keel jรคrgib nende mรคrkide kodeerimiseks Ameerika standardset teabevahetuse koodi (ASCII). Umlaute pole ASCII tabelis otse saadaval.
unsigned char a_umlaut_lower = 0xE4; unsigned char a_umlaut_upper = 0xC4;
รlaltoodud koodisegmendis nรคete, kuidas C-programmeerimises esitada ร (0xC4) ja รค (0xE4). Kuueteistkรผmnendvรครคrtused esindavad nende Umlaute mรคrkide ASCII vรครคrtust.
Lisaks ASCII-le saate teatud arvutisรผsteemides kasutada ka Unicode'i teeki nende Umlaute'i mรคrkide esitamiseks.
Samm-sammuline selgitus
Nende vรครคrtuste rakendamine teie koodis sรตltub sellest, mida proovite teha. Siiski on oluline meeles pidada, et toores Umlaute mรคrkide kasutamine vรตib muuta teie koodi vรคhem kaasaskantavaks, kuna mitte kรตik kompilaatorid ei kรคsitle neid รตigesti.
Esiteks veenduge, et teie C-kompilaator toetab neid mรคrke. C99 standard lubab "laiendatud tรคhemรคrke", kuid tugi vรตib olla kompilaatorispetsiifiline.
// This will work on some compilers printf("รคn");
Kui teie kompilaator ei toeta otse Umlaute'i, saate need printida, kasutades nende kaheksand- vรตi kuueteistkรผmnendsรผsteemi paojรคrjestusi.
// Octal and hexadecimal escape sequences printf("344n"); printf("xE4n");
See prindib konsooli "รค".
Klahvi C raamatukogud ja funktsioonid
. stdio.h raamatukogu kasutatakse sel eesmรคrgil C-s laialdaselt. See vรตimaldab meil hallata sisend- ja vรคljundfunktsioone.
#include<stdio.h>
Teine oluline raamatukogu funktsioon on setlocale mis annab meile keskkonnaspetsiifilise lokaliseerimismeetodi Umlaute mรคrkide tรถรถtlemiseks.
#include<locale.h>
Tรคiendav kaalutlused
Veenduge alati, et terminal, milles vรคljundit kuvatakse, toetab Umlaute mรคrke. Kui ei, vรตib see kuvada ootamatu vรคljundi.
Pidage meeles, et Umlaute kuvatakse erineval kujul, olenevalt operatsioonisรผsteemist, programmeerimiskeskkonnast ja konsooli kuvamisvรตimalusest. Pรคrast nende mรคrkide kasutamist on alati soovitatav koodi testida erinevates keskkondades.
Umlaute'i mรตistatus C-s vรตis tunduda keeruline, kuid ASCII-st lihtsa arusaamise ja kooditeekide tรตhusa kasutamisega muutub see mรคrkimisvรครคrselt juhitavaks. Siiski pidage alati meeles erinevusi kodeeringus, kompilaatorites ja operatsioonisรผsteemides, kui kasutate Umlaute'i C-programmeerimisel.