我有这个C函数:
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 :(得分:2)
strcpy将两个字符指针作为参数。 argv [0]是一个字节,而不是char指针。试试
strcpy(v,(char *)argv);
或者,您可以创建一个字符指针并将其指向字节指针,如下所示:
char *string = (char *)argv;