Unicode in c

Unicode in c
Unicode ist eine Reihe von nicht englischen Charakteren, die Charaktere aus einer anderen Sprache wie Arabisch, Hebräisch usw. sein können oder Sonderfiguren wie Emojis und Smiley sein können. Die Charaktercodierung ging zum Wurf, als verschiedene Menschen aus verschiedenen Regionen der Welt in ihren Lokalsprachen kodierten. Aus diesem Grund wurde der gesamte Kommunikationsprozess durch Computer betroffen. Um dieses Problem zu lösen, kam das Unicode -Konsortium in das Bild, das eine Gruppe verschiedener Menschen aus verschiedenen Regionen und verschiedenen Unternehmen war, deren Hauptaufgabe darin bestand.

Unicode begann mit einem festen Zwei-Byte-Zeichensatz, aber später wurde es geändert. Unicode besteht aus mehr als hunderttausend Charakteren und über hundert Sprachen, um mit der Vielzahl verschiedener Sprachen umzugehen, darunter komplexe Charaktere wie Emojis, Modifikatoren und andere unbekannte Charaktere.

Wenn wir versuchen, einen besonderen Charakter wie ein Emoji in der C -Sprache zu drucken, gibt der Compiler nicht das Ergebnis des Druckens dieses Emoji. Es gibt vielmehr einen Code für diesen Emoji zurück, der für den Benutzer nicht hilfreich ist. Um diese Angelegenheit zu lösen, werden wir den Unicode -Prozess in C praktizieren.

Syntax:

Um einen Unicode in C -Sprache zu drucken, verwenden wir eine Funktion namens_setMode, in der wir die Zeichenbits definieren. In der folgenden Abbildung geben wir U16 als Parameter, sodass es nur die Zeichen mit 16 Bitgrenze druckt. Standardmäßig druckt C -Sprache nur 8 Bitzeichen.

Wir verwenden die WPRINTF anstelle der Printf -Funktion, um die Zeile zu drucken. Und wir werden L zu Beginn der Erklärung, die wir drucken möchten. Abgesehen von der folgenden Syntax müssen wir auch zwei inklusive hinzufügen, welche sind:

#enthalten
#enthalten

Hinweis: Unicode ist keine Funktion oder Methode in C, daher gibt es keine spezifische Syntax. Die hier angehängte Syntax dient nur als Referenz.

Beispiel 1:

Wir werden das Thema besser verstehen, indem wir diesem Beispiel folgen. In der Abbildung können Sie verstehen, dass wir zwei zusätzliche Bibliotheken in unseren Code importiert haben. Einer ist und der andere ist . Mithilfe der neuen Datentypen, um die darin enthaltenen Sonderzeichen zu speichern. In der C-Sprache wird der Header verwendet, um die standortbasierten Einstellungen beispielsweise Symbolen wie Währungen und verschiedene Datumsformate zu definieren.

Im Hauptfunktionscode -Block haben wir eine SetLocale () -Funktion aufgerufen. Dies ist die Funktion des Headers. In der Funktion setLocale () haben wir einen Parameter von LC_CTYPE übergeben. Diese Funktion hat viele Parameter wie LC_ALL, die alles festlegen. LC_CTYPE betrifft alle Charakterfunktionen. Es definiert die Charakterattribute wie Fallkonvertierung und Charakterklassifizierungen.

Danach deklarieren wir zwei Variablen von WCHAR_T Datentype: star1 und star2. Wir haben den Unicode für dieses Emoji an unsere Variablen übergeben. Danach haben wir die Werte unserer Variablen geschrieben. Wir haben früher besprochen, dass wir den WPRINTF für den Unicode -Druck verwenden. Wir können auch im folgenden Code sehen, dass wir das WPRintf anstelle von printf verwendet haben.

#enthalten
#enthalten
#enthalten
int main ()

setLocale (lc_ctype, "");
wchar_t star1 = 0x2606;
wchar_t star2 = 0x2605;
Wprintf (L "Black Star: %Lc \ n", star1);
Wprintf (L "White Star: %lc \ n", star2);

Nach der erfolgreichen Ausführung unseres C -Code erhalten wir die folgende Ausgabe. Wir können sehen, dass das System zwei Sterne druckte, anstatt die Werte zu drucken, die wir an unsere Konstanten übergeben haben. Dies liegt daran, dass wir den Unicode für diese Sterne an unsere Variablen übergeben haben. Anschließend überprüfte das System aufgrund der Funktion setLocale () und seines Parameters LC_CTYPE das Zeichen gegen diesen spezifischen Code und fand einen Schwarzweißstern gegen diesen Wert. Wir haben auch den Wprintf verwendet, sodass das System den Charakter gegen den übergebenen Wert von schwarzem Stern und weißem Stern druckte.

Beispiel 2:

Im vorherigen Beispiel haben wir eine komplexe Methode verwendet, um zu verstehen, wie die Unikodierung funktioniert. In diesem Beispiel werden wir eine Aufgabe ausführen, einen Unicode mit Hilfe von so weniger Codezeilen wie möglich zu drucken. Abhängig vom Betriebssystem Ihres Computers oder Maschine können Sie die Unicode -Zeichen auch mit einfacher Druckf -Funktion drucken. Zu diesem Zweck müssen Sie jedoch einen Wert bestehen, um den Compiler wissen zu lassen, dass er einen Unicode -Zeichen drucken muss.

In diesem Beispiel versuchen wir, ein Smiley-Gesicht zu drucken, das ein nicht englischer Charakter ist. Wir übergeben den Unicode -Wert dieses Emoji an unseren Code. Im folgenden Code haben wir einfach eine Nachricht „Hallo dort“ mit einem Smiley am Ende der Erklärung gedruckt. Der Code für Happy Smiley lautet "0001F600". Also haben wir es bestanden, beginnend mit \ u, genau das, wie das Drucken einer Zeichenfolge übergeben wird, damit das System versteht, dass es eine Zeichenfolge drucken muss.

Eine Sache, die Sie vielleicht bemerkt haben, ist, dass wir die Header, die wir im vorherigen Beispiel verwendet haben, nicht verwendet haben. Dies liegt daran, dass wir diese Funktionen und Techniken nicht verwenden, um das System die Unicode -Zeichen lesen zu lassen.

#enthalten
int main ()

printf ("Hallo: \ u0001f600 \ n");
Rückkehr 0;

Die Ausgabe unseres Codes nach der Kompilierung ist wie folgt. Das System druckt die Zeichennachricht so, wie sie ist, aber es liest zuerst das \ u -Zeichen und versteht, dass der nächste Wert, der an sie übergeben wird, ein Unicode ist. Das System wird also verstehen, dass es den nächsten Code in seinen jeweiligen Emoji umwandeln muss. Nach dem Umwandlung des Wertes in die Unicode -Zeichen zeigt das System das Smiley -Gesicht als Ausgabe an.

Abschluss

Wir haben in diesem Artikel über Unikodierung besprochen. Wir haben erklärt, was ein Unicode -Charakter ist, warum er verwendet wird und was die Gründe dafür waren, dass der Unikodierungsstandard eingeführt wurde. Wir haben besprochen, wie man mit den Unicode -Zeichen in der C -Sprache arbeitet, da die C -Sprache nur etwa 256 Zeichen unterstützt. In den angegebenen Beispielen haben wir erklärt, wie wir eine Reihe von Werten in ein Unicode -Emoji oder einen Unicode -Charakter codieren können. Nach der gesamten Erklärung, die zuvor gegeben wurde, können wir sagen, dass Unikodierung ein sehr hilfreicher Ansatz zur Bekämpfung der Kommunikationsbrücke ist. Mit Hilfe von Unicode -Entwicklern und Programmierern aus jeder Ecke der Welt können wir die Programme in ihren Sprachen codieren und schreiben. Darüber hinaus können die gesamten Anwendungen in verschiedenen Sprachen entwickelt werden, was ihnen hilft, verständlicher und lesbarer für die Benutzer zu werden. Unikodierung hilft, die UI -Sprachen nicht nur der Anwendungen, sondern auch des gesamten Betriebssystems zu ändern. Unikodierung ist also keine spezifische Funktion oder Bibliothek in der C -Sprache. Es ist ein internationaler Codierungsstandard, der in jeder Programmiersprache angewendet werden kann.