c语言在windows下如何取得机器名

发布网友 发布时间:2022-03-01 13:15

我来回答

3个回答

热心网友 时间:2022-03-01 14:44

gethostname()函数就可以啊!!!

int gethostname(char *name, size_t len)这个函数,调用后,会将主机名保存在name里面。而len是name的大小。
例程,编译后只需要运行就知道自己的主机名字了。
#include <netdb.h>
#include <sys/socket.h>

int main(int argc, char **argv)
{
struct hostent *hptr;
char **pptr;
char hostname[32];
char str[32];

if( gethostname(hostname,sizeof(hostname)) )
{
printf("gethostname calling error\n");
return 1;
}
printf("localhost name:%s\n",hostname);
if( (hptr = gethostbyname(hostname)) == NULL)
{
printf("gethostbyname calling error\n");
return 1;
}
pptr=hptr->h_addr_list;
for(;*pptr!=NULL;pptr++)
printf(" address:%s\n", inet_ntop(hptr->h_addrtype, *pptr, str, sizeof(str)));

return 0;
}

热心网友 时间:2022-03-01 16:02

会用VC读取注册表吗?
读取
HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSet001\\Control\\ComputerName\\ActiveComputerName下的ComputerName项即可得到机器名。

热心网友 时间:2022-03-01 17:37

什么意思?
不明白耶!
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com