izplavajo ASCII pretvorbe

M

momar128

Guest
Moram spremeniti plavajočo vejico v ASCII v jeziku C. Mi lahko kdo ponazoriti s preprostim zgledom.
 
- Dobil obliko tistih, ki so shranjeni (vaš C prevajalnik dokumentacija mora povedati, da je) v spominu - dobijo bajte iz spomina glede na zgoraj oblikovanje in pretvorbo jim bajt po bajt v ASCII acccording v smislu bajt.
 
To je zelo odvisno od stroja, morate biti sposobni, da tisto, kar potrebujete, če vaš prevajalnik ima sprintf knjižnico, ki deluje podobno kot printf, obenem pa daje rezultate v pomnilnik (pomnilnik), iz katere se lahko naučite ascii predstavitev vašega likvidna sredstva. Jaz tudi rutinsko, ki sem ga našla na internetu, ampak kot rečeno je to odvisno od stroja! Če je mogoče, uporabi sprintf. Upam, da to pomaga
 
Če uporabljate IEEE 754 (najbolj običajna) standard za likvidna sredstva ne pozabite: bit 31 bit predznaka 23-30 eksponent pri višji za 127 (0 es 127) bit 0 -22 mantissa potem lahko eloborate funkcijo, ki je sestavljen zveze pomešano z estructure za vrnitev teh polj in nato Prevesti nato ASCII. Ta zveza se vrnete polja bajtov za trasmision preko RS232 kanal.
Code:
 union {dvojno num_float; dolgo int num_longint int num_int; struct {char dividir byte3; char byte2, char byte1, char byte0;} bajtov;} številko in dostop do polj za ta primer: void tx_float (zakonska num_tx) {numero.num_float = num_tx; putch (numero.bytes.byte3) putch (numero.bytes.byte2) putch (numero.bytes.byte1) putch (numero.bytes.byte0);}
potem samo nastavite polja za vrnitev znak, eksponent mantissa, če prav razumem tvoj problem, in s preprostim delovanjem spremeniti, da ASCII ex kode. -1,25 E 24. (Znak, mantissa, eksponente)
 
lahko uporabite thses funkcije: AnsiString __ fastcall FloatToStr (Extended vrednost); AnsiString __ fastcall FloatToStrF (Extended vrednost, TFloatFormat format, int Precision, int cifre); int __ fastcall FloatToText (char * Buffer, const nična * Vrednost, TFloatValue ValueType, TFloatFormat Format, int Precision, int cifre); int __ fastcall FloatToTextFmt (char * Buffer, const nična * Vrednost, TFloatValue ValueType, char * Format);
 

Welcome to EDABoard.com

Sponsor

Back
Top