I just started classes at my school in programming and I learned how to use ? :
for the first time. My first question is what this is called, because my prof didn't say what it is called.
Second, I'm writing a program that prints even when given an even number and odd when given an odd number. I wanted to write it like this
int main() {
int x = 3;
char *string;
if (x % 2 == 0 ? string = "Even" : string = "Odd");
printf("%d is %s", x, string);
}
the problem is I get an error error: lvalue required as left operand of assignment
at if (x % 2 == 0 ? string = "Even" : string = "Odd");
and it's the string = "Odd"
part.
Am I not allowed to assign expressions to variables inside of if( ? : )
? I want to keep my code short and not have to write it like
if (x % 2 == 0) {
printf("%d is Even", x);
} else {
printf("%d is Odd", x);
}