|
| char pointer ?!?!? Fra : Lasse Madsen |
Dato : 10-06-03 11:02 |
|
Hej jeg vil gerne lave en funktion således (i en embedded c compiler)
void send_sms ( char flash *ptr, long int nr )
{
printf("at+cmgs=%u",nr);
delay_ms(200);
printf("%s%c",*ptr,0x1A);
delay_ms(200);
}
men når jeg skriver send_sms("Hej Hej",12345678);
sker der ikke det helt store ?
er der nogen der kan sige mig om jeg har grebet pointerne forkert an?
| |
Bertel Lund Hansen (10-06-2003)
| Kommentar Fra : Bertel Lund Hansen |
Dato : 10-06-03 11:07 |
|
Lasse Madsen skrev:
>void send_sms ( char flash *ptr, long int nr )
Typen skal erklæres for hver eneste variabel:
void send_sms ( char flash, char *ptr, long int nr )
--
Bertel
http://bertel.lundhansen.dk/ FIDUSO: http://fiduso.dk/
| |
Lasse Madsen (10-06-2003)
| Kommentar Fra : Lasse Madsen |
Dato : 10-06-03 11:40 |
|
Hej Bertel
flash fortæller blot kompileren at den streng jeg putter in i *ptr er fysisk
tilstæde i flash hukommelsen på processoren.
m.v.h.
l. madsen
"Bertel Lund Hansen" <nospamfor@lundhansen.dk> skrev i en meddelelse
news:hdbbev0a4n8vlufpf44hdl6m3ms093f0hg@news.stofanet.dk...
> Lasse Madsen skrev:
>
> >void send_sms ( char flash *ptr, long int nr )
>
> Typen skal erklæres for hver eneste variabel:
>
> void send_sms ( char flash, char *ptr, long int nr )
>
> --
> Bertel
> http://bertel.lundhansen.dk/ FIDUSO: http://fiduso.dk/
| |
Rasmus Christian Kaa~ (10-06-2003)
| Kommentar Fra : Rasmus Christian Kaa~ |
Dato : 10-06-03 12:04 |
|
> flash fortæller blot kompileren at den streng jeg putter in i *ptr er
fysisk
> tilstæde i flash hukommelsen på processoren.
er det så ikke netop dét der er problemet? nu kender jeg ikke lige embedded
c, men prøv at allokere strengen et andet sted end i funktionskaldet...
| |
Igor V. Rafienko (10-06-2003)
| Kommentar Fra : Igor V. Rafienko |
Dato : 10-06-03 12:05 |
|
[ Lasse Madsen ]
[ ... ]
> void send_sms ( char flash *ptr, long int nr )
> {
:
> printf("%s%c",*ptr,0x1A);
Mener du
printf( "%c%c", *ptr, 0x1A );
eller
printf( "%s%c", ptr, 0x1A );
?
ivr
--
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
| |
Lasse Madsen (10-06-2003)
| Kommentar Fra : Lasse Madsen |
Dato : 10-06-03 13:48 |
|
Hej
> Mener du
>
> printf( "%c%c", *ptr, 0x1A );
>
> eller
>
> printf( "%s%c", ptr, 0x1A );
>
Jeg mener ...
printf( "%s%c", ptr, 0x1A );
for jeg vil jo gerne skrive den streng ud som ptr peger på.
m.v.h.
l. madsen
| |
Igor V. Rafienko (10-06-2003)
| Kommentar Fra : Igor V. Rafienko |
Dato : 10-06-03 14:07 |
|
[ Lasse Madsen ]
[ ... ]
> Jeg mener ...
>
> printf( "%s%c", ptr, 0x1A );
>
> for jeg vil jo gerne skrive den streng ud som ptr peger på.
Nettopp. Og når du skriver akkurat det, hva skjer da?
ivr
--
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
| |
|
|