Adakah saiz C ''int'' 2 bait atau 4 bait?

Adakah Saiz C Int 2 Bait Atau 4 Bait



Saiz ' int ” dalam bahasa C adalah topik hangat yang sering menimbulkan kekeliruan dalam fikiran pembaca. Pada masa C dibangunkan, saiz ' int ” adalah 2 bait tetapi apabila masa berlalu dan keluaran versi yang dikemas kini, saiz biasanya dicapai 4 bait . Walau bagaimanapun, ia bukanlah peraturan yang sukar dan pantas, kerana saiz ' int ” boleh berbeza-beza bergantung pada pengkompil dan platform yang anda gunakan untuk pengekodan.

Jika anda keliru tentang saiz ' int ” sama ada ia 2 bait atau 4 bait , ikut garis panduan artikel ini.

Adakah Saiz C 'int' 2 Bait atau 4 Bait

Pada hari-hari awal, apabila bahasa C diperkenalkan, satu perkara yang terlintas dalam fikiran pembangun ialah menjadikan bahasa ini semudah mungkin. Pada masa itu, komputer menggunakan pemproses 16-bit, oleh itu pada masa itu, saiz ' int ” telah ditetapkan kepada 2 bait. Apabila masa berlalu, kuasa pengkomputeran sistem meningkat dan pembangun kemudian menukar saiz ' int ” dalam C hingga 4 bait. Sebabnya adalah untuk membolehkan pengaturcara C menggunakan nilai yang besar dan membangunkan lebih banyak atur cara kuasa pada sistem.







Faktor Apa yang Mempengaruhi saiz 'int' dalam C

Terdapat tiga faktor yang mempengaruhi ' int ” saiz dalam C, iaitu seperti berikut:



1: The pemproses sesuatu sistem sangat mempengaruhi ' int ” saiz. Untuk seni bina 32-bit, nilai ' int ” saiz ialah 4 bait. Sebabnya ialah bait terdiri daripada 8 bit jadi jika anda mendarab 8 bit/bait dengan 4 bait, hasilnya akan menjadi 32-bit.



2: The sistem operasi versi juga mempunyai impak yang besar pada ' int ' saiz dan sistem pengendalian 64-Bit akan menggunakan 4 bait ' int ” jenis. Walau bagaimanapun, ini masih bergantung pada faktor lain seperti pengkompil atau platform yang digunakan.





3: The penyusun juga mempengaruhi ' int ” dalam C dan terdapat penyusun yang membenarkan pengaturcara C mengkonfigurasi saiz “int” mengikut pilihan mereka.

Penyusun yang berbeza boleh mempunyai pelaksanaan bahasa C yang berbeza, bermakna mereka mungkin melihat C ' int jenis data dengan cara yang berbeza. Lazimnya, pengkompil boleh mempertimbangkan ' int ” dalam bahasa C menjadi 2 bait atau 4 bait dalam saiz. A 2 bait 'int' akan menduduki dua bait memori, dengan nilai yang boleh disimpan ditunjukkan sebagai -32768 kepada 32767 . Sebaliknya, a 4 bait 'int' akan menduduki empat bait memori, dengan nilai dipaparkan sebagai -2147483648 kepada 2147483647 .



Walau bagaimanapun, jika kita menyemak saiz ' int ” dalam Pengkompil C++ moden, ia memberi kita jawapan:

#include
#include
#include

int utama ( int argc, char ** argv ) {
printf ( 'Int_MAX     :   %d \n ' , INT_MAX ) ;
printf ( 'int_MIN    :   %d \n ' , INT_MIN ) ;
kembali 0 ;
}

Dalam kod di atas, kami menentukan saiz ' int ” menggunakan fungsi int_MAX() dan int_MIN() yang menunjukkan kepada kita bahawa saiz ' int ” ialah 4 bait .

Pengeluaran

Kebanyakan penyusun moden melaksanakan bahasa C sedemikian rupa sehingga saiz C “int” ialah 4 bait . Yang berkata, sesetengah penyusun masih menggunakan 2 bait 'int' saiz, bermakna pembangun mesti memastikan untuk menyemak pengkompil yang mereka gunakan untuk memastikan program mereka berfungsi dengan betul.

Kesimpulan

Yang tepat saiz C 'int' jenis data boleh berbeza-beza mengikut pengkompil yang digunakan. Selalunya, ia adalah 4 bait , membolehkan julat nilai yang lebih besar disimpan. Yang berkata, sesetengah penyusun masih boleh melaksanakan bahasa C dengan cara yang saiz C 'int' ialah 2 bait. Akhirnya, pengaturcara mesti sedar tentang pengkompil yang digunakan untuk menentukan yang tepat saiz C 'int' .