c - 指向字符串的指针数组

标签 c arrays string pointers

我们知道 c 会自动在字符数组的末尾插入 NULL(\0)。但为什么它不在字符串指针数组的末尾插入 NULL 字符。

例如:如果我写

char name[]={40,20,30,20,22,22,'c','a','b'}

NULL 字符将被自动添加。但是如果我创建一个类型为 Char 的指针数组 不会在数组末尾添加空字符 例如

char *names[]={"aaa","bbb","cccc"}

最佳答案

你的理解不正确。你说,

For Eample: If i write

char name[]={40,20,30,20,22,22,'c','a','b'}

The NULL character will be automatically added.

这不是真的。

如果您使用:

char name[] = "abc";

添加了终止空字符,但不是您使用的形式。

关于c - 指向字符串的指针数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26200078/

相关文章:

c - C 中的文件 IO 和字符串意外值

Python:将数据从扭曲的套接字读取到 SWIG-ed 结构中

c - 如何为可移植程序正确使用 gcc -fsso-struct?

c - 下面的代码有什么问题?预期 X 由线程 Func 1 修改,随后 X 由线程 Func 2 修改

javascript - 如何根据javascript中的值拆分字符串

python - 如何从 python 中的字符串中提取多子字符串?

c++ - 脚本如何通过在 Lua 中加载不同的脚本来保留其值?

c - 如果只在运行时知道,如何调用函数指针,其中参数的数量

c - 在 C 中将动态数组设置为彼此相等

javascript - 检测字符串中的相同事件