double in unsigned short[4] umwandeln



  • hallo
    ich möchte einen double in 4 shorts-wariablen teilen
    dh. short[0] enthält 1 und 2 byte
    short[1] enthält 3 und 4 byte
    short[2] enthält 5 und 6 byte
    short[3] enthält 7 und 8 byte

    mit welcher Operationen kann ich das machen.
    habe schon mit << versucht aber habe kompilerfehler bekommen

    der Hintegrung ist dass ich diese double-wert in einem short array ablegen möchte. diesen array caste ich nach char* und sende ich über socket an den Server. auf der anderen Seite muss ich wieder den double-wert aus short[4] gewinnen.
    danke für jede Hilfe und Typ

    Youssef



  • warum wandelst du's nicht in char[8] um? Dann haettest du keine endian-Probleme 🙂



  • char pValue[8];
    double fValue;
    memcpy(pValue, &fValue, sizeof(double));

    😉

    Aber was soll der ganze spaß? was spricht gegen:

    send((char*)&fValue, sizeof(fValue));

    ....

    recv((char*)&fValue, sizeof(fValue));

    ???



  • mit ner union gehts auch


Anmelden zum Antworten