2016-05-08 20 views
-4

Ich bemerke, dass dies ein C++ - Array ist, aber ich weiß nicht, was es speichert und wie. Ich habe einen Arduino Image Converter verwendet. Ich habe die Quelle vergessen, aber ich erinnere mich, dass es war, Bilder auf Arduino-TFT-Bildschirme zu konvertieren. Könnte mir jemand einen Tip geben, was der Name der Codierung ist oder was auch immer es ist, so kann ich es Forschung weiter: (. BTW dies nur ein Auszug des Codes ist)Welche Art von Array ist das in C++?

// Generated by : ImageConverter 565 v1.1 
// Generated from: 4-14-12-063-copy.jpg 
// Time generated: 5/8/2016 12:57:28 PM 
// Dimensions : 484x324 pixels 
// Size   : 313,632 Bytes 

#include <avr/pgmspace.h> 

prog_uint16_t 4-14-12-063-copy[0x26490] PROGMEM ={ 
0xC638, 0xD6B9, 0xC617, 0xC637, 0x844F, 0xA573, 0x7C8F, 0xC6B8, 0xFFDD, 0xEF3B, 0xCDF6, 0x9C2F, 0x838D, 0x51E6, 0x4A47, 0x4A67, // 0x0010 (16) 
0x7BCD, 0xB5B5, 0xCE37, 0xA513, 0xC637, 0xCE57, 0xBD75, 0x5249, 0x3184, 0x4A47, 0x736D, 0x83EF, 0x39E6, 0x2123, 0x2923, 0x18E2, // 0x0020 (32) 
0x2122, 0x2963, 0x1902, 0x18E1, 0x2964, 0x4247, 0x2984, 0x2122, 0x31A4, 0x39E5, 0x2964, 0x2964, 0x3164, 0x18A1, 0x18A1, 0x2943, // 0x0030 (48) 
0x31A5, 0x18C1, 0x10C1, 0x0880, 0x18E2, 0x1902, 0x10A1, 0x10A1, 0x10A1, 0x0880, 0x08A0, 0x1102, 0x1923, 0x10E2, 0x1081, 0x0860, // 0x0040 (64) 
0x0040, 0x0860, 0x08A1, 0x0881, 0x0880, 0x0880, 0x0880, 0x18E2, 0x18C2, 0x0020, 0x0860, 0x0840, 0x0020, 0x0020, 0x0000, 0x0040, // 0x0050 (80) 
0x0040, 0x08A0, 0x31E5, 0xA5B4, 0xA5B4, 0x9512, 0x5B8B, 0x3A87, 0x21C4, 0x2A25, 0x3246, 0x5B8B, 0x8CB0, 0x638C, 0x42A8, 0x4AC9, // 0x0060 (96) 
0x532A, 0x52E9, 0x4AC8, 0x7C4E, 0xA594, 0xADB4, 0x94D1, 0x73CD, 0x842F, 0x73CD, 0x7C4F, 0x740E, 0xB5F6, 0xE75C, 0xFFFF, 0xFFFF, // 0x0070 (112) 
0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, // 0x0080 (128) 
0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, // 0x0090 (144) 
0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, // 0x00A0 (160) 
+14

Dies ist kein gültiger C++ - Code. –

+3

Ich stimme zu, diese Frage als off-topic zu schließen, weil sie eine unklare Frage stellt und behauptet, dass etwas C++ ist, das in C++ nicht syntaktisch gültig ist. –

+2

Die Kommentare sagen Ihnen, aus welcher Datei es generiert wurde und welches Programm es generiert hat. – Galik

Antwort

1

Die 4-14-12-063-copy ist kein gültige variablen/Typnamen in C++ und Array-Deklarationen gehen wie

typename nameofarry[sizeofarry] = { optional initializer block }; 

So ist die PROGMEM nach den [] ist nicht gültig C++ entweder, und wenn es überhaupt kompiliert muss es eine Art von nicht-Standard-Erweiterung sein speziell für eingebettete Programmierung.

Wenn Sie jedoch nach dem Wort "hexadezimal" suchen, sehen die Daten wie 16-Bit-hexadezimale Daten aus, die dem beabsichtigten Typ von prog_uint16_t entsprechen - was vermutlich eine 16-Bit-Ganzzahl ohne Vorzeichen ist.

Update: ... Und entsprechend dem Kommentar im Code werden die Daten von einem JPEG image generiert.

+1

Ich wollte meine eigene Antwort schreiben, aber Sie könnten auch hinzufügen, dass - gemäß den Kommentaren des Codes - es ein JPEG ist. – kfsone

+0

Die Daten sind kein JPEG-Bild. Es wurde aus einem JPEG-Bild generiert, ist jetzt aber ein anderes Format. – interjay

+0

@interjay - sicher, aktualisiert den Wortlaut – Soren