【问题标题】:malloc error: a value of type "void *" cannot be used to initialize an entity of type "int **"malloc 错误:“void *”类型的值不能用于初始化“int **”类型的实体
【发布时间】:2019-02-21 01:57:45
【问题描述】:

我试过了:

int** thread_args = malloc(24);

int** thread_args = malloc(sizeof(int*) * 3);

但我不断收到错误消息。

非常感谢您的帮助!

【问题讨论】:

标签: c++ malloc


【解决方案1】:

如果你使用 C++ 编译器,你可能需要强制转换 malloc 的结果:

int ** th_args = (int**)malloc(24)

或者干脆使用运算符new

如果您使用C 编译器,那么...我不确定为什么会抛出此错误

【讨论】:

  • 我很确定你应该在 C++ 中使用 static_cast<>(或者是现有的容器类型,真的)。
猜你喜欢
  • 2012-11-20
  • 1970-01-01
  • 2022-01-25
  • 2016-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-25
  • 2018-02-17
相关资源
最近更新 更多