我正在尝试使用“gethostbyname”。如果我将主机名直接硬编码到函数调用中,效果很好。但是,我试图将用户输入传递给这个函数。我相信我的问题可能是因为我传递给函数的数组有很多尾随空格。
void connectHost(char *hostname)
{
int n;
//This works
//n = gethostbyname("irc.ubuntu.com");
//This always returns NULL
n = gethostbyname(hostname);
if(n == NULL)
{
printf("Host Not Found.");
}
}
int main()
{
char hostname[256];
fgets(hostname,255,stdin);
connectHost(hostname);
}
那么将主机名传递给函数的最佳方法是什么?我不应该使用 fgets 吗?
谢谢!