Hello, I'm using Eclipse with cygwin. I have an app with a Timer 0 FIQ and a UART0 IRQ. The timer 0 is used to simulate a PWM. In the UART ISR I have implemented a echo. I also have a print(char *str) function. The problem is that the only way which the program runs is declaring a string like that: char str[100]; str[0]='q'; str[0]='w'; str[0]='e'; str[0]='r'; ... Print(str); If I do this, everything works fine. But if I try to initialize the string like this: str = "qwert" all interrups don't work anymore. I have tried declaring: const char *str; const char *str = "qwerty"; Print("qwerty"); const char *str = {'q','w','e','r','t','y'}; ... and the conclusion I have at this moment is that if I use in my code the character "" to indicate a string, it doesn't work. Do you have any suggestion? Thatk you very much.
> const char *str; > const char *str = "qwerty"; > Print("qwerty"); > const char *str = {'q','w','e','r','t','y'}; > ... > Hi, I Ansi 'C' you should do this: char str[] = "hello world"; you need to reserve the space in memory to store your string. regards Jonathan
Vicente wrote: > and the conclusion I have at this moment is that if I use in my code the > character "" to indicate a string, it doesn't work. In what way does it not work - fails to compile or runtime failure? Describe the failure mode. Post the build log if it fails to build; post complete example code rather than fragments in either case. Make sure that you build with -Wall -Werror, compiler options, and clear up any warnings. Perhaps use of literal string constant where a constant is invalid? Hard to tell from your post. Clifford
Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
Log in with Google account
No account? Register here.