Compartilhar via


PREfast Warning 328 (Windows CE 5.0)

Send Feedback

328 - <type> passed as parameter <number> when <type> is required in call to <function>.

For the is* routines, passing an argument of type char can yield unpredictable results.

An SBCS or MBCS single-byte character of type char with a value greater than 0x7F is negative. If a char is passed, the compiler might convert the value to a signed int or a signed long. This value might be sign-extended by the compiler, with unexpected results.

Example

Defective Source

char* str;   
bool b1 = isdigit(*str);

Corrected Source

char* str;   
bool b2 = isdigit((unsigned char)*str);

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.