类型无法强转的问题
代码如下:int read_func(void* ptr, uint8_t* buf, int buf_size)
{
FILE* fp = (FILE*)ptr;
size_t size = fread(buf, 1, buf_size, fp);
int ret = size;
printf("Read Bytes:%d\n", size);
return ret;
}火山代码
指针不能转为类...如果可以就方便很多了
本帖最后由 server 于 2025-5-16 12:59 编辑
你这不是方不方便的问题。
他这个写法都过不了C++编译器吧。
不能这样用类。
你至少 加个 &取类指针啊。
驴头驴头对不上马嘴驴头对不上马嘴 - -
你单纯的指针类型问题,那加个类型强转没问题。
你把类转成指针没得搞。只能加取址符
这还是基础尝试问题。
server 发表于 2025-5-16 12:58
你这不是方不方便的问题。
他这个写法都过不了C++编译器吧。
不能这样用类。
你说错了,C++编译器是支持的,只是上层火山语法限制不让这样做.
跟C++基础牢固不牢固没啥关系. 小蜗牛 发表于 2025-5-16 12:51
指针不能转为类...如果可以就方便很多了
这种目前我采用的嵌入方式来解决的. 沉默流星 发表于 2025-5-16 13:06
这种目前我采用的嵌入方式来解决的.
如果C++ 支持的话,你直接使用 @ 嵌入代码. 可以避免 语法检查.
我不清楚你是 如何定义 文件类的
server 发表于 2025-5-16 13:08
如果C++ 支持的话,你直接使用 @ 嵌入代码. 可以避免 语法检查.
我不清楚你是 如何定义 文件类的
...
是的,用嵌入是可以实现的。我想问的是不使用嵌入能不能解决这个问题 一、uint8_t* 是无符号字节指针,不是字符;
二、文件类的别名类型改成本地整数基本类型,才可以强转; Xelloss0618 发表于 2025-5-16 13:21
一、uint8_t* 是无符号字节指针,不是字符;
二、文件类的别名类型改成本地整数基本类型,才可以强转; ...
无符号字节指针,官方类库中没搜到啊 沉默流星 发表于 2025-5-16 13:34
无符号字节指针,官方类库中没搜到啊
当然是要自己封,或者统一用变整数也行
页:
[1]
2