2012-11-06 88 views
-1

我使用Arduino的,我有這樣的代碼:Arduino - 如何將char *複製到char **中?

char *swap[100]; 
prog_char settings1[] PROGMEM = "option 1"; 
prog_char settings2[] PROGMEM = "option 2"; 
prog_char settings3[] PROGMEM = "option 3"; 

PROGMEM char* general[] = {sttings1, settings2, settings3}; 

在一個功能,我通過general[]陣列:

void fillArray(char *arr[]){ 
    for(int i=0; i<2; i++){ 
     strcpy_P(swap,(char*)pgm_read_word(&(arr[i]))); <== Error 
    } 
} 

我需要從arr[]拉字符,這些存儲在swap[]數組。

+0

這個問題不能以目前的形式來回答。請提供更多(或任何)上下文。 –

+0

什麼是ARR?什麼是pgm_read_word? – imreal

+0

嘿! -2是什麼意思? –

回答

0

我不認爲你需要的ampersandarrchar *

strcpy_P(swap,(char*)pgm_read_word(arr[i])); 

數組甚至

strcpy_P(swap,pgm_read_word(arr[i])); 
+0

我試過你的解決方案,但它仍然無法正常工作。編譯器告訴我「從char到uint16_t的無效轉換」 –