【发布时间】:2020-01-24 15:42:16
【问题描述】:
C 指针和字符串
如果我不知道字符串的维度,是否可以从标准输入读取字符串并存储在指针中?
【问题讨论】:
-
是的,你需要动态分配内存。你听说过
malloc()? -
有两种方法 - easy but non-portable 和硬但便携,但有一些限制。
-
或者显式调用 posix getline() 或 getdelim() 函数,这至少意味着如果你将来构建在 posix 以外的东西上,你就不会挠头想知道如何破坏 scanf . man7.org/linux/man-pages/man3/getline.3.html
-
Matteo, “如果我不知道字符串的尺寸?” --> 您是否有一个合理的上限,或者您是否希望允许用户通过您的代码消耗任意数量的内存?将输入限制为几百个字符怎么样?
标签: c