4

我正在编写一些使用函数 gethostbyname() 的代码。此函数要求我向它传递我要为其查找主机的主机字符串。现在我在一个字符数组中声明了我的字符串,最后有一个空字节,因此它被认为是一个字符串。

当我像这样执行 printf 时:printf("\n%s\n",hostName);代码将正确打印并说出如下内容:facebook.com

但是,当我尝试像这样打印字符串时:printf("\n%sX\n",hostName);输出将Xacebook.com出于某种原因。

有谁知道为什么 X 会覆盖我的字符串的第一个字符?我认为它应该像“facebook.comX”一样打印。

4

1 回答 1

4

您在字符串的末尾有一个 \r 。这会将光标移回行首。我猜您正在从文件中读取主机名?

于 2011-05-19T05:18:31.283 回答