【问题标题】:'new char[]' does not work, but it should'new char[]' 不起作用,但它应该
【发布时间】:2013-09-07 23:06:46
【问题描述】:

我有返回 char* 的代码 如果在 cpp 中写入:

char* test_char = new char[size];

一切都很好,但如果我写在标题中:

char* test_char;

在 cpp 中:

test_char = new char[size];

程序编译但不运行。

我做错了什么?

【问题讨论】:

  • “不运行”是什么意思?
  • 向我们展示您的标头和 cpp 文件中的代码。
  • 您能否发布一段“完整”的代码,而不仅仅是几行代码?很难准确理解它们是如何连接在一起的,这很可能是问题所在。 (我编辑以格式化您发布的代码,但我没有修复 char = new char[size] 的“明显”错字,因为我不能 100% 确定这是什么意思)
  • "程序编译" 不,它没有。无论如何,不​​像发布的那样。
  • 如果你写char = new char[size];,代码肯定不会编译。

标签: c++ object pointers memory return


【解决方案1】:

char = 新字符[大小];

你可能想要

test_char = new char[size];

【讨论】:

  • 是的,就是这个意思
【解决方案2】:
char = new char[size];

这甚至不应该编译。您缺少变量名:

test_char = new char[size];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-30
    • 2012-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-19
    • 1970-01-01
    相关资源
    最近更新 更多