#define CAT_CONTROL 7 #define STR1(x) #x #define STR(x) STR1(x)
int main(void)
{
printf("The value is %s\n", STR(CAT_CONTROL));
return(0);
}When I run this I get:
The value is 7
Bob
At 12:50 PM 7/25/2003 -0300, you wrote:
Thanks for your answer Bob, but I have a little problem becouse with #define STR1(x) #x the statement becomes "#7"
I tired:
#define STR1(x) [EMAIL PROTECTED]
It's works fine but only with single digit values. And '7' isn't a const char * :-(
Can you help me?
Thanks again. German
-----Mensaje original----- De: Bob Withers [mailto:[EMAIL PROTECTED] Enviado el: Viernes, 25 de Julio de 2003 12:02 p.m. Para: Palm Developer Forum Asunto: Re: convert #define number to const char*
You need two levels, i.e.
#define CAT_CONTROL 7
#define STR1(x) #x #define STR(x) STR1(x)
printf("%s", STR(CAT_CONTROL));
Bob
At 11:36 AM 7/25/2003 -0300, you wrote: >Hi, > >I have this constant, #define CAT_CONTROL 7 > >I want to convert CAT_CONTROL to const char * and I don't want to do this: > >char cAux[2]; >itoa(CAT_CONTROL ,cAux,10); > >I try to use a preprocessor operator: > >#define STR(x) #x > >But that doesn't work, because I obtain "CAT_CONTROL" like result. > >Any help would be greatly. > >Best Regards, >German > >-- >For information on using the Palm Developer Forums, or to unsubscribe, >please see http://www.palmos.com/dev/support/forums/
-- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
--
For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
-- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
