关于 strcpy 的说明

Clarification on strcpy

我目前正在通过 edube.org 学习 C,并且在 运行 代码块中的代码时遇到了一些与我的观察不太一致的东西。

例如:edube.org 表示调用:

strcpy(string, "爱丽丝有一只猫");

用字符串 Alice.

填充数组 string

我最初认为(只是按照 edube.org 中的上述语句)这可能是因为“Alice”之后的 space 可能被认为是一个空字符 '\0' 标记字符的结尾。但事实似乎并非如此。我只是在寻求澄清以说服自己 edube.org 确实不正确。

要么是你看错了,要么是站错了。

strcpy(string, "Alice has a cat");

这会用字符串 "Alice has a cat".

填充字符数组

空字符(ASCII 代码 0)是一个独特的字符,不能直接从键盘输入。在 C 中,它由 [=12=] 表示,默认情况下附加在所有字符串文字的末尾。它不应与 space 字符(ASCII 代码 32)混淆,后者只是一个常规字符。