这是因为 "uint8_t *" 是无符号8位整数类型的指针,而 "char *" 是字符类型的指针。虽然它们在内存中具有相同的表示方式,但是它们的类型不同,因此编译器会发出警告或错误。

要解决这个问题,可以使用强制类型转换将 "uint8_t *" 转换为 "char *" ,例如:

uint8_t *ptr = ...;
char *cptr = (char *)ptr;

但是需要注意,这种转换可能会导致数据丢失或错误,因为 "uint8_t" 和 "char" 类型在语义上是不同的。如果要进行指针操作或数据读写,应该使用正确的类型来避免错误。

c++ 	uint8_t 类型的实参与 char 类型的形参不兼容	 如何处理

原文地址: https://www.cveoy.top/t/topic/eGA3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录