2012-11-15 12 views
12

:"Genişletilmiş tam sayı türleri" nelerdir? Okuduğum kitaptan aktaran

  1. signed char, signed short int, signed int, signed long int, signed long long int are called standard signed integer types
  2. unsigned char, unsinged short int, unsigned int, unsigned long int, unsinged long long int, _Bool are called standard unsigned integer types
  3. In addition to the standard integer types, the C99 standard allows implementation-defined extended integer types, both signed and unsigned. For example, a compiler might be provide signed and unsigned 128-bit integer types.

Ben 3 nokta ile sorunu var. Bu "genişletilmiş tamsayı türleri" nelerdir? Herhangi bir örnek?

+0

uzun uzun uzun? –

+2

hata: 'uzun uzun' GCC – fuz

cevap

2

uzatılmış tamsayı tipine bir örnek, MS Visual C ile tanımlanan __int64 64 bitlik işaretli tamsayı türüdür veya long long int. (Bu arada MSVC, long long int için destek ekledi.)

+6

Bu, MSVC'nin c90 ve c90 * genişletilmiş tamsayı tiplerine * sahip olmadığı için en iyi örnek değildir. C99'da tanıtıldılar. – ouah

+1

@ouah İyi nokta. Böyle bir vakayı kapsayacak şekilde genişletilmiş tamsayı türlerinin getirildiğini söylemek daha doğru olur. – user4815162342

+2

not: ayrıca gcc tarafından tanımlanabilen '__int128' * * genişletilmiş tamsayı türleridir çünkü [GCC, herhangi bir genişletilmiş tamsayı türlerini desteklemez] (https://gcc.gnu.org/onlinedocs/gcc/Integers-implementation. html). – jfs

3

Genişletilmiş tam sayı türleri, uzantı olarak sağlanan uygulamaya özel tamsayı türleridir. Bu tür uzantılar hakkında hemen hemen her şey uygulama tanımlı olduğundan, standart onlar hakkında çok şey söyleyemez. Ancak, bir C++ 09 teklifi, bu tür uzantıları standart uyumlu programların davranışlarına müdahale etmeyecek şekilde uygulamak için bir çerçeve sunar.

genişletilmiş tamsayı türleri ile ilgili her şeyi kapsayan this'a başvurmalısınız. Bu tip belli ki int, long int olarak elde edilemeyen MSVC eski sürümlerinde tamamlayıcı tip iken

+2

için çok uzun Burada http://vineetgupta22.wordpress.com/tag/unsigned-integer/? – md5