我有一个带有c ++类的c接口dll,它有一个unsigned char指针函数参数。如何处理从matlab到c dll的unsigned char指针?我已经尝试过转换为uint8,libpointer(' uint8',0),只是让matlab处理它,传递数字0或1.我尝试的任何东西都没有。我只是从我输入的matlab函数中得到了相同的输入。关于如何处理从matlab到c的unsigned char指针的任何建议?
答案 0 :(得分:0)
如果有人自己遇到这个问题。当你需要在c或c ++中使用unsigned char数据进行处理时,解决方案是将matlab数据作为整数(int)传递。然后通过c接口作为整数接收它,并在收到它之后将其转换为unsigned char。
这是有效的原因是因为整数保留的内存比unsigned char多。因此,如果使用整数传递数据,则只有在将其分配给unsigned char时才会切掉额外的内存。