c - 当一个字符串只包含 '\0' 时会发生什么? C

标签 c string

在我的程序中,我从 .txt 文件中读取单词,并将它们插入到链表和哈希表中。

如果在一个单词后连续读取两个'\n'字符,那么程序将读取的第二个单词将是'\n',但是我随后用'\0'覆盖它,所以基本上字符串只包含'\0'.

是否值得我放置一个 if 语句,以便我的程序的下一部分仅在单词是真实单词(即 word[0] != '\n')时才执行?字符串 '\0' 会用完哈希表/链表中的空间吗?

最佳答案

在 C 中,第一个元素为 \0 的字符数组是一个空字符串,即长度为零。如果您要问的话,将空字符串保留在容器中没有多大意义。

关于c - 当一个字符串只包含 '\0' 时会发生什么? C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14305212/

相关文章:

swift - 表达式从 'String?' 隐式强制转换为 Any

java - 如何从这个字符串中解析出时间戳?

c - 程序不会终止

string - 为什么 Haskell 无法读取 "7e7"但能够读取 "7a7"?

c - C 程序 "expected ‘)’ 上 ‘{’ 标记之前的 Makefile 错误”

c++ - 如何将 C/C++ 库代码封装为可在具有多个实例的单独线程中运行?

c - 如何在动态规划技术中从头开始打印最佳路径

javascript - 正则表达式 - 排除括号和带特殊键的括号

c++ - 在 C/C++ 中,是否有类似于 #ifndef 的指令用于 typedef?

c - 如何用C语言通用代码实现可执行文件和共享库