【问题标题】:c create a string on heapc 在堆上创建一个字符串
【发布时间】:2012-01-17 08:53:41
【问题描述】:

我需要在堆上创建一个字符串,我想知道标准库中是否已经包含类似的东西,还是我必须自己实现它(使用 malloc())?

【问题讨论】:

  • 为什么是-1?我认为这根本不是那么糟糕的问题....

标签: c string heap-memory string.h


【解决方案1】:

您可以使用 malloc()calloc()strdup()(后者是 POSIX,而不是标准 C)。

“自己实现(使用malloc())”是什么意思并不完全清楚——具体要实现什么?

【讨论】:

  • 不要忘记为终止 NUL 字符分配额外的空间!
  • 我想问的是是否有一个标准函数(即“strmk”)可以获取一个 char* 并返回一个指向堆上内存的指针。估计没有,我必须自己创建那个函数。
  • @Bg1987:如果您只是想创建给定字符串的堆分配副本,这就是strdup() 所做的。
猜你喜欢
  • 2010-12-27
  • 2017-03-15
  • 1970-01-01
  • 2013-08-27
  • 1970-01-01
  • 1970-01-01
  • 2018-06-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多