Löytyykö C:stä valmista funktiota tällaiselle operaatiolle, vai pitääkö sekin nyt kirjoittaa itse?
Se käy itoa(); funktiolla.
char A[10]; itoa(5, A ,16); //16 meinaa sitä että luku 5 muutetaan hexaksi. Tulos tulee A:han
Tänkjuu! Pitää koklata tuota huomenna.
Tuo ei sitten kuulu C-standardiin, vaikka se löytyykin useimmista implementaatioista.
Varmuuden vuoksi kannattaa kirjoittaa oma, käyhän se harjoituksesta :)
Jos on tarkoitus tulostaa jokin 10-kantainen luku heksalukuna, voi sen tehdä esim. seuraavasti:
int m = 34; printf("0x%x\n", m);
ja vastaavasti saman suuntaisesti käyttäen sprintf-funktiota, jos tarvitsee saada tulos talteen merkkijonoon. Silloin tosin pitää varmistaa, että merkkijonossa todellakin on tilaa tulostettaville merkeille.
Aihe on jo aika vanha, joten et voi enää vastata siihen.