Wie speichert man Bytearrays in C?

Dies scheint eine so grundlegende Frage zu sein, aber ich kann auf SO nirgendwo eine Antwort finden.

Ich weiß, dass C / C ++ keinebyte Datentyp. ich weiß dassizeof(char) == 1.

Ich versuche, 12 Übertragungen mit jeweils 96 Bytes auf Pebble zu speichern, die von meiner Android-App übertragen wurden.

Aufgrund der Beschränkung der Übertragungsgröße sende ich jeweils eine Nachricht. Jede sollte an die letzte angehängt werden, da sie am Ende einen sequentiellen Speicherplatz zum Lesen als Bild (ein Bit pro Pixel) bilden sollte.

Ich versuche so etwas zu machen:

int transNum = 0;
uint8_t image[][] = new uint8t[12][12] //not sure about uint8_t, and I've forgotten how to do 'new' in C, I have to create just a pointer, and then malloc?

receivedHandler(DictionaryIterator *iter, void *context){
    Tuple *receivedImage = dict_find(iter, KEY_IMG);
    for (int i = 0; i < 12; i++) {
        image[transNum][i] =  receivedImage->value[i]->uint8_t;
    }
    transNum += 1; //this is in an implicit loop, since once done Pebble ACKs the transmission, and receivedHandler is called again by the next transmission
}

Bin ich auch nur aus der Ferne in der Nähe?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage