Freigeben über


C28132

Warnung C28132: Verwenden der Größe des Zeigers

Zusätzliche Informationen

Dies ergibt die Größe eines Zeigers (4 oder 8), nicht die Größe des Objekts, auf das verwiesen wird. Dereferenzieren Sie den Zeiger, oder verwenden Sie, wenn die Größe eines Zeigers beabsichtigt war, stattdessen den Zeigertyp oder (void *).

Der Treiber nimmt die Größe einer Zeigervariable an, nicht die Größe des Werts, auf den verwiesen wird. Wenn der Treiber die Größe des Point-to-Werts benötigt, ändern Sie den Code so, dass er auf den Wert verweist. Wenn der Treiber tatsächlich die Größe des Zeigers benötigt, nehmen Sie die Größe des Zeigertyps (z. B. LPSTR, char* oder sogar void*), um zu verdeutlichen, dass dies die Absicht ist.

Beispiel

Im folgenden Codebeispiel wird diese Warnung ausgelöst.

memset(b, 0, sizeof(b));

Im folgenden Codebeispiel wird diese Warnung vermieden.

memset(b, 0, sizeof(*b));