共用方式為


C28722

警告 C28722:函式宣告中的未批注緩衝區

這個警告表示傳遞為函式參數或函式所傳回的緩衝區,應以Microsoft原始程式碼註釋語言 (SAL) 標註。 靜態分析工具可以使用這類註釋來偵測編譯時期的緩衝區滿溢。

目前,只有非常數緩衝區會診斷出此警告。

範例

下列程式代碼範例會產生這個警告。

int foo( LPTSTR buffer, size_t cch );  

下列程式代碼範例會使用 SAL 註釋 _Out_writes_ 來指定呼叫的函式寫入緩衝區,而且緩衝區不能為 NULL,以避免這個警告。 批注指出緩衝區是 cch 元素

int foo( _Out_writes_(cch) LPTSTR buffer, size_t cch );