Размер C ''int'' 2 байта или 4 байта?

Razmer C Int 2 Bajta Ili 4 Bajta



Размер ' инт на языке C — горячая тема, которая часто вызывает путаницу в сознании читателя. В то время, когда C был разработан, размер “ инт ' был 2 байта но с течением времени и выходом обновленной версии размер как правило достигал 4 байта . Тем не менее, это не жесткое правило, поскольку размер « инт ” может варьироваться в зависимости от компилятора и платформы, которую вы используете для написания кода.

Если вы не уверены в размере “ инт ' будь то 2 байта или 4 байта , следуйте инструкциям этой статьи.

Является ли размер C «int» 2 байта или 4 байта

В первые дни, когда появился язык C, единственное, что пришло в голову разработчикам, — сделать этот язык как можно более простым. В то время в компьютере использовался 16-битный процессор, поэтому в то время размер « инт ” было зафиксировано на 2 байта. Со временем вычислительная мощность системы увеличивается, а затем разработчик меняет размер « инт ” в C до 4 байт. Причина этого в том, чтобы позволить программистам C использовать большие значения и разрабатывать больше мощных программ в системе.







Какие факторы влияют на размер «int» в C

Есть три фактора, которые влияют на « инт ” в C, которые заключаются в следующем:



1: процессор системы сильно влияет на « инт ' размер. Для 32-битной архитектуры значение « инт ” размер 4 байта. Причина в том, что байт состоит из 8 бит, поэтому, если вы умножите 8 бит/байт на 4 байта, результат будет 32-битным.



2: Операционная система версия также оказывает огромное влияние на « инт ', а 64-битная операционная система будет использовать 4 байта' инт ” типы. Однако это по-прежнему будет зависеть от других факторов, таких как используемый компилятор или платформа.





3: компилятор также влияет на « инт ” в C, и существуют компиляторы, которые позволяют программистам на C настраивать размер “int” по своему выбору.

Разные компиляторы могут иметь разные реализации языка C, что означает, что они могут просматривать C инт тип данных по-разному. Чаще всего компилятор может рассматривать « инт ” на языке C быть 2 байта или 4 байта по размеру. А 2 байта «целое» занял бы два байтов памяти, а значения, которые он может хранить, отображаются как -32768 к 32767 . Напротив, 4 байта «целое» занял бы четыре байтов памяти со значениями, отображаемыми как -2147483648 к 2147483647 .



Однако, если мы проверим размер « инт ” в современном компиляторе C++ дает нам ответ:

#include
#include
#include <лимиты.h>

внутренний основной ( целочисленный аргумент, символ ** argv ) {
printf ( 'Int_MAX     :   %d \n ' , INT_MAX ) ;
printf ( 'int_MIN    :   %d \n ' , INT_MIN ) ;
возвращаться 0 ;
}

В приведенном выше коде мы определяем размер « инт ” с помощью функций int_MAX() и int_MIN() что показывает нам, что размер “ инт ' является 4 байта .

Выход

Большинство современных компиляторов реализуют язык C таким образом, что размер C «int» — 4 байта . Тем не менее, некоторые компиляторы все еще используют 2 байта «целое» размер, что означает, что разработчики должны обязательно проверить, какой компилятор они используют, чтобы убедиться, что их программа работает правильно.

Заключение

Точный размер C «int» тип данных может варьироваться в зависимости от используемого компилятора. Чаще всего это 4 байта , что позволяет хранить больший диапазон значений. Тем не менее, некоторые компиляторы все еще могут реализовать язык C таким образом, что размер C «int» составляет 2 байта. В конечном счете, программист должен знать, какой компилятор используется для определения точного размер C «int» .