V731. The variable of char type is compared with pointer to string.
The analyzer has detected a comparison of a char variable with a pointer to a string. The reason why the variable is used that way is in using double quotes (") instead of single quotes (') by mistake.
Here's an example for this error pattern:
char ch = 'd';
....
if(ch == "\n")
....
The inattentive author of this code wanted to compare the 'ch' variable with a new string's character but used quotes of a wrong type. This resulted in the value of the 'ch' variable being compared to the "\n" string's address. Code like that can compile and execute well in C but usually makes no sense. The correct version of the code sample above should use single quotes instead of double ones:
char ch = 'd';
....
if(ch == '\n')
....
The same kind of mistake can be also made when initializing or assigning a value to a variable, causing this variable to store the least significant byte of the address of the string being assigned.
char ch = "d";
The correct version of the code should use single quotes.
char ch = 'd';
This diagnostic is classified as: