以下代碼爲wsprintf
調用生成Lint警告559「參數3的大小與格式不一致」,任何人都可以解釋原因嗎?Lint警告問題559
WCHAR szFoo[] = L"test";
WCHAR szBar[MAX_PATH];
wsprintf(szBar, L"c:\\path\\%s\\path", szFoo);
有趣的是,如果我改變的格式類型%S
警告不再上調,但本課程的重新解釋szFoo作爲LPSTR而非LPWSTR,這也是錯誤的。
當然,我可以只是林特評論警告,但我很想知道爲什麼它認爲有問題。
非常感謝! – snowcrash09 2011-04-19 16:58:10