this question helped me to print in different collors.
Iam trying to create a function which always prints the given char*
in blue. I got so far:
#define KBLU "\x1B[34m"
#define KWHT "\x1B[37m"
void infoPrint(char* msg, ...)
{
printf("%s", KBLU);
printf(msg);
printf("%s", KWHT);
}
When i call the function:
int value = 42;
infoPrint("Show value: %d.\n", value);
Iam getting the following output in the color blue:
Show value: 0.
For any reason the value 42
is not passed correctly.
If i change the function void infoPrint(char* msg, ...)
to:
void infoPrint(char* msg, ...)
{
printf(msg);
}
Iam getting the output (obviously in standard terminal color):
Show value: 42.
What happens to the value 42? Why is it 0 if I try to print in blue before printing the actual message?
Thank you