|
| int til Hex Fra : Harald |
Dato : 27-08-01 20:34 |
|
Hej
Hvordan konvertere man en int til en Hex streng.
Jeg bruger Borland C++ 3.01
Mvh
HK
| |
Martin Moller Peders~ (27-08-2001)
| Kommentar Fra : Martin Moller Peders~ |
Dato : 27-08-01 20:58 |
|
In <3b8aa027$0$287$edfadb0f@dspool01.news.tele.dk> "Harald" <kroning@jyde.dk> writes:
>Hej
>Hvordan konvertere man en int til en Hex streng.
>Jeg bruger Borland C++ 3.01
char *a;
a=(char *)malloc(10);
sprintf(a,"%x",15);
printf("%c",a[0]);
Mvh
Martin
| |
Harald (27-08-2001)
| Kommentar Fra : Harald |
Dato : 27-08-01 21:39 |
|
"Martin Moller Pedersen" <tusk@daimi.au.dk> skrev i en meddelelse
news:9me8nu$cgu$1@news.net.uni-c.dk...
> In <3b8aa027$0$287$edfadb0f@dspool01.news.tele.dk> "Harald"
<kroning@jyde.dk> writes:
>
> >Hej
>
> >Hvordan konvertere man en int til en Hex streng.
>
> >Jeg bruger Borland C++ 3.01
>
> char *a;
>
> a=(char *)malloc(10);
> sprintf(a,"%x",15);
> printf("%c",a[0]);
Glemte lige at nævne at jeg INTET kender til C, kan man ikke lave en
function eller procedure hvor man giver sin int som parameter og så får en
streng retur?
Mvh
HK
| |
Igor V. Rafienko (27-08-2001)
| Kommentar Fra : Igor V. Rafienko |
Dato : 27-08-01 22:05 |
|
[ Martin Moller Pedersen ]
[ snip ]
> char *a;
>
> a=(char *)malloc(10);
> sprintf(a,"%x",15);
> printf("%c",a[0]);
Nei, nei og atter en gang nei. Det er opptil flere problemer med denne
halvløsningen. Den riktige måten[*], hvis man først bruker C++, er
std::string
intToStringHex( int i )
{
std::ostringstream oss;
oss << hex << i;
return oss.str();
}
(dog, det jeg ville aldri ha funnet på å skrive en funksjon som
konverterte til hex: en mer generell funksjon (ca. det omvendte at
strtol) som i det minste tar grunntallet som argument er å
foretrekke).
ivr
[*] ok, det finnes flere måter å løse dette på. malloc+sprintf er ikke
en av dem.
--
Good news everyone: I've taught the toaster to feel love
Pr. Farnsworth, Futurama
| |
|
|