2014-10-29 52 views
-2

我有這個C函數:如何將二進制argv轉換爲字符串?

void sysexCallback(byte command, byte argc, byte *argv) 
{ 
... 
} 

,我想轉換argv[0](二進制),以簡單的字符串。我嘗試了諸如:

char v[10]; 
strcpy(v,argv[0]); 

但是,這給了我一個錯誤:

Arduino/hardware/tools/avr/avr/include/string.h:126:14: error: initializing argument 2 of 'char* strcpy(char*, const char*)' [-fpermissive] 
+0

http://meta.stackexchange.com/questions/66377/what-is-the -XY-問題 – 2014-10-29 04:37:13

回答

2

的strcpy需要兩個字符指針作爲它的參數。 argv [0]是一個字節,不是字符指針。嘗試

strcpy(v,(char *)argv); 

或者你可以做一個字符指針,它指向字節的指針,像這樣:

char *string = (char *)argv; 
相關問題