【发布时间】:2017-01-08 17:56:22
【问题描述】:
是否可以将 char '\0' 存储在 char 数组中,然后存储不同的字符?例如
char* tmp = "My\0name\0is\0\0";
我被教导在 C 中实际上称为字符串列表,但是当我尝试打印上面的内容时(使用printf("%s\n", tmp)),它只打印了
“我的”。
【问题讨论】:
-
你怎么知道它只保存了
My?它可能保存了整个序列,但打印功能在“看到”空字符\0后停止 -
正确,已编辑。那么如何才能全部打印出来呢?
-
您应该发布用于打印
tmp的代码——问题在于该代码,而不是能够将 \0 存储在 char 数组中 -
printf(%s\n", tmp);