programowanie '51 w C

witam.

pisze program w C na at89s8252. sa procedury:

void WriteText(char *S) { while (*S) { LcdWrite(*S); S++; } }

void main(void) { WriteText("hello world!"); }

wszystko jest ok, ale chcialbym w ciagu *S wyslac liczbe, ktora jest wartoscia jakiejsc zmiennej int. wymyslilem na to sposob, ale jest dosc dlugi, bo dziele liczbe i zamienia kazda cyfre liczb tysiecy, setek, dzisiatek, jednostek, itd na kod ascii i tak wysylam. zastanawiam sie, czy mozna "przepisac" wartosci np. zmiennej int k = 1234567 do uzycia w miejscu "hello world!" w powyzszej procedurze? prosze o pomoc i sugestie :)

Reply to
Psychik
Loading thread data ...

Psychik snipped-for-privacy@ZAPYTAJ.pl napisał(a):

Zainteresuj się funkcją itoa()

A jak chcesz w zmiennej typu "int" czy "unsigned int",upchnąć 1234567 ?

Pozdrawiam Piotrek

Reply to
Piotrek Sz.

Piotrek Sz. napisał(a):

to jest funkcja ktorej szukam, ALE...

"WARNING 206 IN LINE 148 OF moje2.c " 'itoa': missing function prototype

czy to nie jest czasem funkcja obecna wylacznie w C++ ?

no tak... chodzilo o liczbe wieksza niz 9 (dziesienie) :)

Reply to
Psychik

Nie, to bardzo stara funkcja. Ale przeszukaj pliki .h - bo najwyrazniej zapomniales dolaczyc tego w ktorym jest zaprototypowana.

J.

Reply to
J.F.

J.F. <jfox snipped-for-privacy@poczta.onet.pl> napisał(a):

Kurde !!! Pomyliłem się :( itoa() jest w AVR-GCC , jako funkcja niestandardowa , natomiast w Keil-u i SDCC takowej nie znalazłem :( Przyjdzie Ci skorzystać z (s)pritf() lub napisać własną.

Piotrek

Reply to
Piotrek Sz.

J.F. napisał(a):

wg.

formatting link
wize, ze zainkludowalem to co trzeba. no ale deklaracji itoa ni ma...

Reply to
Psychik

Piotrek Sz. napisał(a):

wlasna juz mam, ale dlugawa i strasznie toporna, wiec szukam czegos o czym nie wiem :)

Reply to
Psychik

Psychik napisał(a):

dlaczego powołujesz się na dokumentację funkcji uniksowych? zwłaszcza, że wyraźnie piszą, że ta funkcja jest rozszerzeniem API dostępnym w produktach danej firmy.

itoa() nie jest standardową funkcją C. jedni ją implementują po swojemu, inni w ogóle. jeśli napisałeś własną, to trzymaj się jej, póki nie będziesz miał prawdziwych, a nie potencjalnych, problemów z zajętością pamięci albo wydajnością.

w.

Reply to
Wojtek Kaniewski

Dlatego przeszukaj. Moze umieliscili w innym pliku, moze faktycznie nie ma.

J.

Reply to
J.F.

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.