08.11.2014 Views

c_kitap

c_kitap

c_kitap

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

C ve Sistem Programcıları Derneği - C Ders Notları - Necati Ergin<br />

biçimindedir.<br />

Burada b karakterleri sekizlik sayı sistemindeki basamakları (0 1 2 3 4 5 6 7) gösteriyor.<br />

Tamsayı Değişmezlerinin Aldığı Sonekler<br />

Bir tamsayı değişmezi, hangi sayı sisteminde yazılırsa yazılsın,<br />

u, U, l ya da L soneklerini alabilir.<br />

u ya da U sonekleri tamsayı değişmezinin işaretsiz tamsayı türünden olduğunu belirler.<br />

l ya da L sonekleri tamsayı değişmezinin long türden olduğunu belirler.<br />

l soneki 1 karakteri ile görsel bir karışıklığa neden olabileceğinden, 'L' soneki<br />

kullanılmalıdır. Bir karakter değişmezi hem u, U soneklerinden birini hem de l, L<br />

soneklerinden birini alabilir. Bu durumda soneklerin yazım sırasının bir önemi yoktur.<br />

Tamsayı Değişmezlerinin Türleri<br />

Tamsayı değişmezinin türü aşağıdaki tabloya göre belirlenir:<br />

Yazım biçimi<br />

bb...b<br />

0xbb...b<br />

0bb...b<br />

bb...bU<br />

0bb...bU<br />

0Xbb...bU<br />

bb...bL<br />

0bb..bL<br />

0xbb..bL<br />

bb...bUL<br />

0bb..bUL<br />

0xbb..bUL<br />

tür<br />

signed int<br />

signed long<br />

unsigned long<br />

signed int<br />

unsigned int<br />

signed long<br />

unsigned long<br />

unsigned int<br />

unsigned long<br />

signed long<br />

unsigned long<br />

unsigned long<br />

Yukarıdaki tablo şöyle yorumlanmalıdır: Belirli bir yazım için verilen türlerden, yukarıdan<br />

aşağı doğru olmak üzere, taşma olmaksızın ilgili değeri tutabilecek ilk tür, değişmezin<br />

türüdür. Aşağıdaki örnekleri inceleyin:<br />

int türünün ve long türünün 2 byte olduğu sistemler için (DOS) örnekler<br />

Değişmez int türü 2 byte long türü 4 byte<br />

(DOS)<br />

int türü ve long türü 4 byte<br />

(Windows - Unix)<br />

456 signed int signed int<br />

59654 signed long signed int<br />

125800 signed long signed int<br />

3168912700 unsigned long unsigned long<br />

0X1C8 signed int signed int<br />

0XE906 unsigned int signed int<br />

0X1EB68 signed long signed int<br />

0XBCE1C53C unsigned long unsigned long<br />

0710 signed int signed int<br />

0164406 unsigned int signed int<br />

0365550 signed long signed int<br />

027470342474 unsigned long unsigned long<br />

987U unsigned int unsigned int<br />

45769U unsigned int unsigned int<br />

1245800U unsigned long unsigned int<br />

3589456800U unsigned long unsigned int<br />

0X3DBU unsigned int unsigned int<br />

48/529

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!