[elektro] C18 kérdés

Tibor Kovács kovacs.tibor7909 at gmail.com
Wed Sep 11 14:56:41 CEST 2013


szuper!

Ez működik, viszont azt hogy csináljam hogy ha ezt:

for (i = 0; i < 18; ++i)
{
ptr += sprintf(ptr, "%02x ", S2buffer[i]);
}

többször is meg akarom hívni akkor ne fűzze mindíg az előző állapot
végéhez. Mert jelenleg ez van...


2013. szeptember 11. 14:37 Lajos Rancz írta, <lajos.rancz at gmail.com>:

> Helló!
>
> Hogy akarod kiírni mint hexa számok mint decimális számok vagy mint
> karakterek?
>
> hexában és decimálisan:
> int i;
> char *ptr = data_2;
> for (i = 0; i < 18; ++i)
> {
> ptr += sprintf(ptr, "%02x ", pS2buffer[i]); // Decimalisan a format string:
> "%d "
> }
>
> Üdv
>
>
> 2013. szeptember 11. 13:58 Tibor Kovács írta, <kovacs.tibor7909 at gmail.com
> >:
>
> > Sziasztok!
> >
> > Egy ujabb C-s kérdés merült fel bennem..
> > Mégpedig van egy bejövő soros adatom amit egy tömb-be letárolok (18
> byte),
> > ezzel eddig nincs is gondom, viszont ahoz hogy ezt ki tudjam írni LCD-re
> át
> > kell tennem egy string-be formázottan. Van egy módszer amivel sikerűlt de
> > túl hosszúnak találom, és az lenne a kérdésem hogy lehet ezt
> > leegyszerűsíteni.
> >
> > pl.: (ez csak 6 byte-ra vonatkozik, nekem ugye 18 kellene)
> > sprintf(data_2, "%c%c%c%c%c%c",
> > s2buffer[0],s2buffer[1],s2buffer[2],s2buffer[3],s2buffer[4],s2buffer[5]);
> >
> > gondoltam egy ilyenre, de ez nem működik...
> >
> > pData_2 = &data_2[0];
> > pS2buffer = &s2buffer[0];
> > for (i=0; i < 18; i++)
> > {
> > sprintf(*pData_2, "%2x", *pS2buffer);
> > pData_2++;
> > pS2buffer++;
> > }
> >
> > előre is köszi!
> > -----------------------------------------
> >           elektro[-flame|-etc]
> >
> -----------------------------------------
>           elektro[-flame|-etc]
>


More information about the Elektro mailing list