LPC_SC->PCONP |= (1<<30); bu şekilde 30. biti set edebiliyorum ama benim pconp'nin 31. bitini set etmem gerekiyor
30 yerine 31 yazıncada "integer operation result is out of range" gibi uyarı veriyor
ne yapsam bu warning kalkar
Bildiğim kadarıyla integer işlemlerde 31. bit işaret bitidir. o nedenle bu uyarıyı veriyor olabilir.
1UL<<31 şeklinde yazmayı deneyin
Alıntı yapılan: yamak - 25 Temmuz 2011, 14:36:58
1UL<<31 şeklinde yazmayı deneyin
evet hocam oldu bunun farkı nedir diğer tanımlamalardada kullanmamnın avantajı varmı
1 i 31 bit kaydırdığımızda int sınırları dışına çıktığımız için 1UL yazarak yapılan işlemi long olarak kabul et diyoruz derleyiciye.Yani int sınırları dışına çıkmayacaksak bunu yapmaya gerek yok.