我有这个 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]
最佳答案
strcpy 使用两个字符指针作为参数。 argv[0] 是一个字节,而不是一个字符指针。尝试一下
strcpy(v,(char *)argv);
或者,您可以创建一个字符指针并将其指向字节指针,如下所示:
char *string = (char *)argv;
关于c - 如何将二进制 argv 转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26622814/