无法从char *转换为void **

托尼

我修改了以下代码

void aligned_free(void *p) {
    free(((void**) p)[-1]);
}

void aligned_free(void **p) {
    free((p)[-1]);
}

带函数调用

char* a = (char*)aligned_malloc(10000,64);
aligned_free(a);

并且编译器给出错误“无法从char *转换为void **”。为什么指针char *无法转换为void **,但是void *可以吗?

威廉·珀塞尔

void *是通用指针。类型的对象void *可以指向任何东西。void **但是,A只能指向type的对象void *Achar不是void *,因此转换失败。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将 void (*)() 转换为 void (*)(unsigned char)

来自分类Dev

无法将'void(MyClass :: *)()'转换为'void(*)()

来自分类Dev

无法从'char **'转换为'char * []'

来自分类Dev

C:将void(*)(void *)转换为void(*)(char *)

来自分类Dev

将const char **转换为void *?

来自分类Dev

将void函数转换为char * C ++

来自分类Dev

void *类型转换为char *的增量失败

来自分类Dev

将void函数转换为char * C ++

来自分类Dev

是否可以将void *转换为char **?

来自分类Dev

无法将void转换为ICommand

来自分类Dev

无法在Java中从void转换为String?

来自分类Dev

无法将void转换为double

来自分类Dev

Java 错误:void 无法转换为 String

来自分类Dev

无法从String转换为Char

来自分类Dev

无法将'char **'转换为'char *'

来自分类Dev

无法将“char (*)[200]”转换为“char**”

来自分类Dev

无法将void转换为java.lang.Void

来自分类Dev

无法从pthread中的void *(类名)(void *)类型转换为void *(*)(void *)类型

来自分类Dev

无法将(Timer!)-> Void转换为((CFRunLoopTimer?)-> Void)!-将NSTimer扩展转换为Swift 3

来自分类Dev

在C中将const void *转换为const char *

来自分类Dev

将void *(不带\ 0的char *)转换为std :: string

来自分类Dev

无法将类型 '(() throws -> Void?) -> ()' 的值转换为预期的参数类型 '((Void) throws -> Void)?'

来自分类Dev

无法将“ TCHAR *”转换为“ const char *”

来自分类Dev

无法将CHAR转换为LPWSTR

来自分类Dev

无法将'int'转换为'const char *'

来自分类Dev

无法将“ TCHAR *”转换为“ const char *”

来自分类Dev

无法从DWORD转换为const char *

来自分类Dev

C ++:无法从“ std :: ifstream”转换为“ char *”

来自分类Dev

无法从字符串转换为char

Related 相关文章

热门标签

归档