السلام عليكم ورحمة الله وبركاته
سؤالي باختصار حول الماكرو HIWORD و الماكرو LOWORD
#define LOWORD(l) ((WORD)(l)) #define HIWORD(l) ((WORD)(((DWORD)(l) >> 16) & 0xFFFF))
حاولت ان افهم ما المقصود بهذه العملية لكني فشلت فارجو ايضاحها بشكل رياضي واضح بمعني اخر
كيف يتم استخراخ قيمتين عدديتين من رقم واحد باستخدامهم
وماهوعكس هذه العملية اي كيف يتم دمج قيمتين في رقم واحد واعادة فصلهم باستخدام الماكرو السابق ذكره
سؤال آخر
وجدت في دوال كثيرة وعلى سبيل المثال منهم الدالة GetFileSize
ان الدالة تقوم بارجاع قيمة تسمى القيمة الدنيا ويتم ارجاع قيمة اخرى في بارميتر تسمي القيمة العليا
وعلى حسب ما قرأته في الــ MSDN انه اذا زاد حجم الملف عن 4 جيجا بيت يتم جلب المساحة من خلال القيمة العليا مع القيمة الدنيا ولو كانت اقل من 4 جيجا فيتم ارجاعها في القيمة الدنيا فقط
فارجو ايضاح هذه النقطة وكيف يتم حسابها اذا زادحجم الملف عن 4 جيجا بيت كما ذكرت ولعلي لم اكن مخطأ الفهم فيما قرأته في الـ MSDN
اسف جداً على تكرار المشاركة بنفس السؤال فلا اعلم كيف ظهر مرتين ربما اخطأت وضغطت على زر اضافة المشاركة مرتين