Miért 1 bájtos a char a C nyelvben

Miert 1 Bajtos A Char A C Nyelvben



C-programozóként valószínűleg elgondolkodott azon, hogy a char mérete miért csak 1 bájt a C nyelvben. Apró részletnek tűnhet, de a mögöttes ok megtalálása segíthet hatékonyabb programok megírásában.

Ebben a cikkben a C nyelv 1 bájtos karakterének okaira összpontosítunk.

Mi a char a C nyelvben

A karakterek és betűk tárolásához a C karaktertípust használ. A C karakterek (char) értékei 1 bájt memóriában vannak tárolva, és értéktartományuk 0 és 255 vagy -128 és 127 között van. A számítógépnek minden egész számot le kell képeznie egy megfelelő karakterrel egy numerikus kód segítségével a karakterek megjelenítéséhez. A leggyakrabban használt numerikus kód az ASCII, ami az American Standard Code for Information Interchange rövidítése.







Miért 1 bájtos a char a C nyelvben

Számos oka lehet annak, hogy a char adattípusa 1 bájtos:



1 : Az első ok az, hogy a karakter mérete előre meghatározott C szabványos könyvtárban. Nem számít, melyik fordítót használja, az 1 bájtos értékeken keresztül tárolja és kezeli a karaktereket. A legvalószínűbb magyarázat az, hogy a char (bináris) megfelelője a szabványos karakterkészletben elfér egyetlen bájtban. A C kezdeti fejlesztése idején a leggyakrabban használt szabványok az ASCII és az EBCDIC voltak, amelyek hét, illetve nyolc bites kódolást igényeltek. Ezért 1 bájt elég volt a teljes karakterkészlet szimbolizálásához.



2 : Az ASCII-betűket általában egy csak 256 karakterből álló karakter jelképezi. Ezért csak a 0 és 255 közötti számtartományt kell megadnia, vagy 8 bit = 1 bájt.





3 : Mivel a C-t 16 bites címterű számítógépeken való használatra tervezték, az egy bájtnál nagyobb karakterláncok használata pazarlásnak számított.

4 : Az 1 bájtos char C nyelvben megkönnyíti a programozók számára, hogy kódjukat különböző gépekre portolják.



5 : Számos programozási nyelv létezik, például a Java és a C++, amelyek 1 bájtos karaktereket használnak, ami megkönnyíti a különböző nyelvek közötti együttműködést.

Hogyan lehet megtalálni a karakter adattípus méretét

A mérete operátor használható egy típus vagy változó pontos méretének meghatározására egy adott platformon. A sizeof(type) kifejezés az objektum vagy típus tárolási méretét adja vissza bájtokban.

#include
int fő ( ) {
char ch;
printf ( 'A karakter mérete: %d bájt \n ' , mérete ( ch ) ) ;
Visszatérés 0 ;
}

A fenti kódban a mérete függvény méretének meghatározásához char C programozási nyelven, amit az alábbi kimeneten látható fordító 1 bájt erősít meg.

Kimenet

Az 1 byte-os karakter előnyei és hátrányai C nyelvben

Az alábbiakban bemutatjuk az 1 bájtos char előnyeit C nyelvben.

  • Hatékonyabbá teszi a C nyelvet.
  • Konzisztensebbé teszi a C nyelvet más nyelvekkel, amelyek szintén bájtokat használnak karakteres adattípusokhoz.
  • A karakterek most már bonyolultabb műveleteknek vethetők alá.

Az egyetlen hátránya az 1 bájtos karakternek, hogy nehézségekbe ütközik a nagy méretű karakterekkel való munka során, mert egyes nyelvek több mint 256 karaktert igényelhetnek.

Következtetés

A fenti irányelvekben láttuk, hogy a char adattípus C nyelvben 1 bájt, és ennek az az oka, hogy minden platformon megőrizzük a konzisztenciát. Ha a karakterméretet 1 bájtra rögzíti, ugyanazok a műveletek különböző gépeken, egyenletes pontossággal hajthatók végre, függetlenül attól, hogy milyen hardvert vagy fordítót használ.