Löytyykö c++:lle php:n "pack" funktiota vastaavaa luokkaa tai funktiota?
Olen nyt etsinyt sitä jo jonkun aikaa googlesta, mutta en ole löytänyt, ja php:n lähdekoodi on sen verran sotkuista etten ymmärrä siitä mitään (pitäisi opetella koko roska, jotta ymmärtäisi osan siitä).
Pack-funktio toimii sillä tavalla, että jos sille antaa esim. tekstin "HelloWorld" niin ulos tulee "48656c6c6f576f726c64" eli periaatteessa tulos on alkuperäinen teksti hexadesimaaleina.
Tuossa on yksi idea toteutukseen:
#include <stdio.h>
char merkit[] = "0123456789abcdef";
void pack(char syote[], char tulos[]) {
    int i;
    for (i = 0; syote[i] != 0; i++) {
        tulos[2*i] = merkit[syote[i]/16];
        tulos[2*i+1] = merkit[syote[i]%16];
    }
    tulos[2*i] = 0;
}
int main(void) {
    char teksti[] = "HelloWorld";
    char heksa[50];
    pack(teksti, heksa);
    printf("%s\n", heksa);
}Ei löydy standardikirjastotsta tuollaista. Tuollaisen funkkarin voit tosin tehdä itse melko helposti, jos tiedät tarkemmin, mitä haluat sen tekevän.
EDIT: ... kuten Antti ehtikin jo näyttää :)
Teinkin, mutta siitä tuli melko sotkuinen, joten lähdin hakemaan valmista netistä. Kiitokset Antille!
Aihe on jo aika vanha, joten et voi enää vastata siihen.