Compiler Error C2050
switch expression not integral
The switch
expression evaluates to a noninteger value. To resolve the error, use only integral values in switch statements.
The following sample generates C2050:
// C2050.cpp
int main() {
int a = 1;
switch ("a") { // C2050
case 1:
a = 0;
default:
a = 2;
}
}
Possible resolution:
// C2050b.cpp
int main() {
int a = 1;
switch (a) {
case 1:
a = 0;
default:
a = 2;
}
}