Visto che non hai detto che API di opengl vuole i dati, suppongo che li voglia formattati così:
4byte per la dimensione, n bytes per i dati.
codice:
    int max_size = size_of(int) + sizedata +1;
    void* buff = ::operator_new(max_size); // o malloc.
    memcpy(buff,&sizedata,sizeof(int)); // imposta i primi 4 byte
    chiamata_api(buff);
tuttavia senza conoscere l'API in questione si può solo tirare a indovinare.