2016-05-08 25 views
-4

我注意到,這是一個C++數組,但我不知道它是如何存儲以及如何。我使用了一個Arduino圖像轉換器。我忘了源代碼,但我記得它是將圖像轉換爲在Arduino TFT屏幕上顯示。可能有人給我一個暗示,它是什麼編碼的名稱或什麼的,這樣我就可以進一步研究它:(順便說一句,這只是代碼的摘錄)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

這是無效的C++代碼。 –

+3

我投票結束這個問題作爲題外話題,因爲它提出了一個不清楚的問題,聲稱某些東西是C++,它在C++中不是語法上有效的。 –

+2

評論告訴你它是從哪個文件生成的,以及它生成的是什麼程序。 – Galik

回答

1

4-14-12-063-copy不是有效變量/ C++中的類型名稱,和數組聲明是這樣

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

所以PROGMEM[]後是無效的C++或者,如果它編譯在所有它必須是某種非標準擴展的專門爲嵌入式編程。

但是,如果你正在尋找的是「十六進制」這個詞,那麼數據看起來像是16位十六進制數據,它與預期類型的​​prog_uint16_t相對應 - 這可能是一個無符號的16位整數。

更新:...並根據代碼中的評論,數據從JPEG image生成。

+1

我打算寫我自己的答案,但是,你可以補充說 - 根據代碼的評論 - 這是一個JPEG格式。 – kfsone

+0

該數據不是JPEG圖像。它是從JPEG圖像生成的,但現在是另一種格式。 – interjay

+0

@interjay - 當然,更新的措辭 – Soren