簡體   English   中英

為什么在使用WinAPI:COLORREF / RGB時,GCC不會報告任何錯誤或警告?

[英]Why GCC doesn't report any errors or warnings when using WinAPI: COLORREF/RGB?

正確的用法是:

COLORREF COLOR = RGB (255,255,255);

但是,這

COLORREF COLOR = (255,255,255);

可以編譯而沒有任何警告或錯誤。

為什么? 這么奇怪? 謝謝。

參考:

  1. COLORREF

  2. RGB()

類型COLORREFDWORD的typedef。

COLORREF COLOR = (255,255,255);

相當於

DWORD COLOR = 255;

因此編譯良好。 但是,它可能無法滿足您的要求。

其原因是, expr1, expr2得到的值expr2在C,所以255, 255, 255具有值255 括號在這里無效。 看到:

http://en.wikipedia.org/wiki/Comma_o​​perator

請注意,RGB宏本身只是根據紅色,綠色和藍色分量生成適當的DWORD (一些數字)。 在這里,數字本質上 COLORREF。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM