#define WaitForActivity(a) ( (*a)=(*a), 0)
bu satir tam olarak ne yapiyor?
bunun kullanildigi yer de asagida..
while(1)
{
WaitForActivity(&activity);
}
activity bir integerdır ...
bu kodu bir türlü ne iş yaptığını anlamadım yardımcı olursanız sevinirim şimdiden teşekkürler.
define prensiplerine göre değerlendirdiniz mi?
yani
WaitForActivity(&activity);
satırı yerine
WaitForActivity(( (*a)=(*a), 0));
satırını kullandınız mı?
zaten kullanamazsınız saçma bir satır olduğundan derleyici red edecektir.
tabii bu arada WaitForActivity(*) fonksiyonunun içeriğini de bilmek gerekiyor. Aldığı parametreleri de.
makroda tek görülen doğru kullanılmadığı.
Bu haliyle sanki define makrosunun yanlış kullanımına verilmiş bir örnekten alıntıya benziyor gibi.
... Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!
Mustafa Kemal Atatürk...
Buradan da görüleceği gibi bu kod hiçbirşey yapmamaktadır. Activity değişkeni activity değişkenine atanmaktadır. Hepsi bu.. Kodun içinde bu kullanılmadığından linker pass 2 de optimizasyon yaparken bu kodu objeden atacaktır.
Kolay gelsin..
Doğan Zorlu, İzmir
------------------------
"Bu Kitap'ı sana yalnız şunun için indirdik: Hakkında ayrılığa düştükleri şeyi onlara iyice açıklayasın ve Kitap, iman eden bir topluluk için kılavuz ve rahmet olsun." (NAHL 64)