RETAILMSG

RETAILMSG

RETAILMSG,Expression Boolean expression used to determine if the message would be output. Message Expression to be printed using printf format style.Return Values

MSDN中解釋,注意問題,

MSDN中解釋

This macro conditionally outputs a printf-style formatted message.
RETAILMSG (
Expression,
Message
)
Parameters
Expression Boolean expression used to determine if the message would be output. Message Expression to be printed using printf format style.Return Values
None.
Remarks
Theprintf-style message parameter is output if the Boolean input expression evaluates to TRUE. Note that the parameter Message must be enclosed by parentheses to prevent syntax errors being generated by the preprocessor. This macro should be used sparingly, as it increases the size of retail builds.
Example
代碼RETAILMSG(TRUE, (TEXT("Testing item count against maximum %u\r\n"),
dwMaxNumberOfItems));
RETAILMSG(dwCurrentNumberOfItems >=dwMaxNumberOfItems,
(TEXT("Invalid item count! Found %u, expected less than %u\r\n"),
dwCurrentNumberOfItems, dwMaxNumberOfItems));
Output
Testing item count against maximum 68
Invalid item count!Found 343, expected less than 68
Requirements
OS Versions: Windows CE OS 2.10 and later
Header: Dbgapi.h
Link Library: none

注意問題

#ifdef DEBUG
RETAILMSG(1,(TEXT("Receive a packet\t\n")));
#endif; 使用RETAILMSG宏時,應注意一個問題:
由於RETAILMSG需要Unicode類型的字元串,所以使用的時候應該這樣寫
RETAILMSG(1,(TEXT("%s\n"),TEXT("Your str")));

熱門詞條

聯絡我們