Avviso C28159
Prendere in considerazione l'uso
*function_name_1*
di anziché .*function_name_2*
Motivo: motivo
Questo avviso si verifica quando si usa una funzione che equivale semanticamente a una chiamata di funzione preferita alternativa.
Osservazioni:
C28159 è un messaggio di avviso generale; l'annotazione è stata usata (possibilmente con un'annotazione __drv_preferredFunction
condizionale __drv_when
) per segnalare una procedura di codifica non valida.
Nome dell'analisi del codice: U edizione Standard_OTHER_FUNCTION
Esempio
Nell'esempio di codice seguente viene generato questo avviso. Questo problema è dovuto all'uso di OemToChar
, che non convalida le dimensioni del buffer:
char buff[MAX_PATH];
OemToChar(buff, input); // If strlen(input) > MAX_PATH, this call leads to buffer overrun
Nell'esempio di codice seguente viene evitato questo avviso usando l'alternativa consigliata OemToCharBuff
, che accetta le dimensioni del buffer di destinazione e limita la copia in modo appropriato:
char buff[MAX_PATH];
OemToCharBuff(buff, input, MAX_PATH);
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per