c中的gethostbyname与gethostbyname(“www.google.com”)一起使用,但与my char不一起使用*
c中的gethostbyname与gethostbyname(“www.google.com”)一起使用,但与my char不一起使用*,c,sockets,gethostbyname,C,Sockets,Gethostbyname,gethostbyname在执行gethostbyname(“www.google.com”)时起作用,但在执行类似操作时: char *name = "www.google.com"; gethostbyname(name); 连接正在超时。我要确保在函数之前对字符串进行修剪,以确保其中没有任何时髦的字符。我不明白这个问题。#包括 #include <stdio.h> #include <netdb.h> int main() { char *name
gethostbyname
在执行gethostbyname(“www.google.com”)
时起作用,但在执行类似操作时:
char *name = "www.google.com";
gethostbyname(name);
连接正在超时。我要确保在函数之前对字符串进行修剪,以确保其中没有任何时髦的字符。我不明白这个问题。#包括
#include <stdio.h>
#include <netdb.h>
int main()
{
char *name = "www.google.com";
struct hostent* test = gethostbyname(name);
printf("%s\n", test->h_name);
return 0;
}
#包括
int main()
{
char*name=“www.google.com”;
struct hostent*test=gethostbyname(名称);
printf(“%s\n”,test->h\u name);
返回0;
}
这是我尝试过的,效果很好:
www.google.com
可能会显示代码,我们可以看看问题是否出在其他地方。您可以显示代码吗?
gethostbyname()
在大多数平台上都不推荐使用,您应该使用getaddrinfo()
。好的名称来自fgets(name,255,stdin),我相信问题是“\r”正在从man fgets
:>“如果新行被读取,它将被存储到缓冲区。”所以,是的,可能就是这样,我希望它被修复了!