Avviso C6306
Chiamata errata a 'function': è consigliabile usare 'function' che accetta un va_list come argomento
Osservazioni:
Questo avviso indica una chiamata di funzione non corretta. La printf
famiglia include diverse funzioni che accettano un elenco variabile di argomenti. Queste funzioni, tuttavia, non possono essere chiamate con un va_list
argomento. Esiste una famiglia di funzioni corrispondente vprintf
che può essere usata per tali chiamate. La chiamata alla funzione di stampa errata causerà un output non corretto.
Nome dell'analisi del codice: INCORRECT_VARARG_FUNCTIONCALL
Esempio
Il codice seguente genera questo avviso:
#include <stdio.h>
#include <stdarg.h>
void f(int i, ...)
{
va_list v;
va_start(v, i);
//code...
printf("%s", v); // warning C6306
va_end(v);
}
Per correggere questo avviso, usare il codice seguente:
#include <stdio.h>
#include <stdarg.h>
void f(int i, ...)
{
va_list v;
va_start(v, i);
//code...
vprintf_s("%d",v);
va_end(v);
}
Vedi anche
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