Arkadaşlar Merhaba;
C ile hex veya bazı sayı değerleri yazılırken sonuna u,ul gibi ifadeler alıyor. Bunların bir önemi veya anlamı var mıdır? Neden yazılıyor? yazılmasa da olur mu?
Örneğin;
_XTAL_FREQ 16000000UL ile _XTAL_FREQ 16000000 aynı mı? // Denedim herhangi bir sorun çıkmadı.
#define Mask_BIT0 0x0001u ile #define Mask_BIT0 0x0001 aynı mı?
degisken &=~(0x03UL << pinNumber); ile degisken&=~(0x03 << pinNumber); aynı mı?
Teşekkür ederim. Herkese İyi çalışmalar.
Unsigned, unsigned long terimlerinin kısaltması. Nasıl hex için 0x yaziyoruz, aynı şey. Cast ediyor, kullanmazsanız sorun çıkabilir yerine ve yapılan işleme göre. Burada Aynı kapıya çıkıyor. Sizin verdiğiniz örneklerde
Anladım hocam teşekkür ederim. O zaman
degisken &=~(0x03UL << pinNumber); ile degisken&=~(0x03 << pinNumber); aynı mı?
yukarıdaki örnekte sayı değeri olarak her ikisinde de herhangi bir uyuşmazlık yok. Ben yine 0x03'ün binary olarak karşılığı ne ise ona göre işlem yapıcam.
0x03UL = 32 bit
0x03 = 8 bit
Sen 32 bitin ilk 8 biti ile işlem yaptığın için aynı sonucu alıyorsun.
Hocam çok teşekkür ederim. Şimdi oldu herşey. Sağolun. İyi çalışmalar.
Teyit Etmek amaçlı soruyorum hocam. O halde;
0x00UL= 32bit
0x00u = 16bit
0x00 = 8 bit olarak işlem görüyor. doğru mudur hocam?