Freigeben über


Warnung C6522

Ungültige Größenangabe: Der Ausdruck muss vom integralen Typ sein: Anmerkung 'Anmerkung' für Funktion 'Funktion' 'Parameter'

Hinweis

Diese Warnung tritt nur in Code auf, der eine veraltete Version der Quellcodeanmerkungssprache (SOURCE-Code Annotation Language, SAL) verwendet. Es wird empfohlen, Ihren Code zu portieren, um die neueste Version von SAL zu verwenden. Weitere Informationen finden Sie unter Verwenden von SAL-Anmerkungen zum Reduzieren von C/C++-Codefehlern.

Hinweise

Diese Warnung weist darauf hin, dass ein integraler Typ erwartet wurde, aber ein falscher Datentyp verwendet wurde. Sie können Anmerkungseigenschaften verwenden, die die Größe eines Parameters in Bezug auf einen anderen Parameter akzeptieren, aber Sie müssen den richtigen Datentyp verwenden. Eine Liste der Anmerkungseigenschaften finden Sie unter Verwenden von SAL-Anmerkungen zum Reduzieren von Codefehlern.

Codeanalysename: INVALID_SIZE_STRING_TYPE

Beispiel

Der folgende Code generiert diese Warnung:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(ValidBytes="c")] char *pc, double c);

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(ValidBytes="c")] char *pc, double c);

Verwenden Sie zum Korrigieren dieser Warnung size_t den ValidBytesParam Parameterdatentyp, wie im folgenden Beispielcode gezeigt:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(ValidBytes="c")] char *pc, size_t c);

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(ValidBytes="c")] char *pc, size_t c);