Dlaczego Char ma 1 bajt w języku C

Dlaczego Char ma 1 bajt w języku C
Jako programista C prawdopodobnie zastanawiałeś się, dlaczego rozmiar char to tylko 1 bajt w języku C. Może to wydawać się małym szczegółem, ale znalezienie przyczyny może pomóc w pisaniu bardziej skutecznych programów.

W tym artykule skupimy się na przyczynie 1-bajtowego char w języku C.

Co to jest char w języku C

Aby przechowywać postacie i listy, C używa typu char. Wartości znaku (char) w C są przechowywane w 1 bajcie pamięci i mają zakres wartości od 0 do 255 lub -128 do 127. Komputer musi zmapować każdą liczbę całkowitą z pasującym znakiem za pomocą kodu numerycznego w celu przedstawienia znaków. Najczęściej używanym kodem numerycznym jest ASCII, który oznacza amerykański standardowy kod w celu wymiany informacji.

Dlaczego Char ma 1 bajt w języku C

Istnieje wiele powodów, dla których typ danych wynosi 1 bajt:

1: Pierwszym powodem jest to, że rozmiar charytatywny jest predefiniowany w standardowej bibliotece C. Bez względu na to, którego kompilatora używasz, będzie przechowywał i manipulował znakami za pomocą wartości 1-bajtowych. Najbardziej prawdopodobne wyjaśnienie jest to, że odpowiednik (binarny) w standardowym zestawie znaków może zmieścić się w jednym bajcie. W momencie początkowego rozwoju C najczęściej używanymi standardami były ASCII, a także EBCDIC, które wymagały odpowiednio siedmiu i ośmiu bitów. Dlatego 1 bajt wystarczył, aby symbolizować cały zestaw znaków.

2: List ASCII jest zazwyczaj reprezentowany przez char, który zawiera tylko 256 znaków. Dlatego musisz tylko wskazać zakres liczb od 0 do 255 lub 8 bitów = 1 bajt.

3: Ponieważ C został zaprojektowany do stosowania na komputerach z 16 bitami przestrzeni adresowej, używając większego niż jeden bajt dla sznurków uznano za marnotrawstwo.

4: Posiadanie 1 bajtu w języku C ułatwia programistom przeniesienie kodu na różne maszyny.

5: Istnieje kilka języków programowania, takich jak Java i C ++, które używają znaków 1-bajtowych, co ułatwia interoperację między różnymi językami.

Jak znaleźć rozmiar typu danych charytatywnych

rozmiar Operator może być używany do określenia precyzyjnego rozmiaru typu lub zmiennej na określonej platformie. Rozmiar wyrażenia (typ) zwraca rozmiar pamięci obiektu lub typu w bajtach.

#włączać
int main ()
char ch;
printf („Rozmiar char: %d Byte \ n”, sizeof (CH));
powrót 0;

W powyższym kodzie używamy rozmiar funkcja znalezienia wielkości zwęglać w języku programowania C, który jest 1 bajt potwierdzony przez kompilator pokazany na poniższym wyjściu.

Wyjście

Zalety i wady 1 bajtowa char w języku C

Poniżej przedstawiono zalety posiadania 1 bajtów w języku C.

  • To sprawia, że ​​język C jest bardziej wydajny.
  • Sprawia, że ​​język C jest bardziej spójny z innymi językami, które również wykorzystują bajty dla typów danych znaków.
  • Postacie można teraz poddać bardziej skomplikowanym operacjom.

Jedyną wadą, jaką otrzymasz za pomocą 1 bajtu, jest to, że będziesz miał trudności z pracą z postaciami o dużych rozmiarach, ponieważ niektóre języki mogą wymagać więcej niż 256 znaków.

Wniosek

W powyższych wytycznych zauważyliśmy, że typ danych charaktecznych w języku C wynosi 1 bajt, a powodem tego jest utrzymanie spójności na wszystkich platformach. Poprzez ustalenie rozmiaru charytatywnego do 1 bajtu, te same operacje mogą być przeprowadzane na różnych maszynach o spójnej dokładności bez względu na to, którego sprzętu lub kompilatora używasz.