Ако сте объркани относно размера на „ вътр ” независимо дали е 2 байта или 4 байта , следвайте указанията в тази статия.
Дали размерът на C „int“ е 2 байта или 4 байта
В първите дни, когато беше въведен езикът C, единственото нещо, което идваше на ум на разработчиците, беше да направят този език възможно най-прост. По това време компютърът използваше 16-битов процесор, така че по това време размерът на „ вътр ” беше фиксиран на 2 байта. С течение на времето изчислителната мощност на системата се увеличава и след това разработчикът променя размера на ' вътр ” в C до 4 байта. Причината за това е да се позволи на C програмистите да използват големи стойности и да разработват по-мощни програми в системата.
Какви фактори влияят върху размера на „int“ в C
Има три фактора, които влияят на „ вътр ” размер в C, които са както следва:
1: The процесор на система силно влияе върху „ вътр ” размер. За 32-битова архитектура стойността на „ вътр ” размерът е 4 байта. Причината е, че байтът е съставен от 8 бита, така че ако умножите 8 бита/байт с 4 байта, резултатът ще бъде 32-битов.
2: The операционна система версия също има огромно влияние върху „ вътр ' размер и 64-битова операционна система ще използва 4 байта ' вътр ” типове. Това обаче все пак ще зависи от други фактори, като използван компилатор или платформа.
3: The компилатор също засяга „ вътр ” в C и има компилатори, които позволяват на C програмистите да конфигурират размера на „int” според техния избор.
Различните компилатори биха могли да имат различни реализации на езика C, което означава, че те могат да видят C “ вътр ” тип данни по различни начини. Най-често компилаторът може да разгледа „ вътр ” на езика C да бъде 2 байта или 4 байта в размер. А 2 байта 'int' би заемал две байтове памет, като стойностите, които може да съхранява, се показват като -32768 да се 32767 . За разлика от това, a 4 байта 'int' би заемал четири байтове памет, със стойности, показани като -2147483648 да се 2147483647 .
Ако обаче проверим размера на „ вътр ” в модерен C++ компилатор ни дава отговора:
#include#include
#include
int main ( int argc, char ** argv ) {
printf ( 'Int_MAX : %d \н ' , INT_MAX ) ;
printf ( 'int_MIN : %d \н ' , INT_MIN ) ;
връщане 0 ;
}
В горния код ние определяме размера на „ вътр “ с помощта на функциите int_MAX() и int_MIN() което ни показва, че размерът на „ вътр ” е 4 байта .
Изход
Повечето съвременни компилатори имплементират езика C по такъв начин, че размерът на C „int“ е 4 байта . Въпреки това някои компилатори все още използват 2 байта 'int' размер, което означава, че разработчиците трябва да са сигурни, че проверяват кой компилатор използват, за да се уверят, че програмата им работи правилно.
Заключение
Точния размер на C 'int' типът данни може да варира в зависимост от използвания компилатор. Най-често е така 4 байта , което позволява съхраняването на по-голям диапазон от стойности. Въпреки това някои компилатори все още могат да внедрят езика C по такъв начин, че размер на C 'int' е 2 байта. В крайна сметка, програмистът трябва да е наясно с компилатора, който се използва, за да определи точния размер на C 'int' .