Warning C6305

Potential mismatch between sizeof and countof quantities

Remarks

This warning indicates that a variable holding a sizeof result is being added to or subtracted from a pointer or countof expression. This operation will cause unexpected scaling in pointer arithmetic.

Code analysis name: SIZEOF_COUNTOF_MISMATCH

Example

The following code generates this warning:

void f(int *p)
{
  int cb=sizeof(int);
  //code...
  p +=cb; // warning C6305
}

To correct this warning, use the following code:

void f(int *p)
{
  // code...
  p += 1;
}