iphone获得3G DNS主机名和ip地址 C/C++可以获得当前的DNS服务器IP地址,用于3G/CLE数据连接吗?
环顾四周,找不到确切的答案。iphone获得3G DNS主机名和ip地址 C/C++可以获得当前的DNS服务器IP地址,用于3G/CLE数据连接吗?,iphone,dns,Iphone,Dns,环顾四周,找不到确切的答案。\35;包括 #include <arpa/inet.h> #include <ifaddrs.h> #include <resolv.h> #include <dns.h> // - (NSString *) getDNSServers { NSMutableString *addresses = [[NSMutableString alloc]initWithString:@"DNS Addresses
\35;包括
#include <arpa/inet.h>
#include <ifaddrs.h>
#include <resolv.h>
#include <dns.h>
//
- (NSString *) getDNSServers
{
NSMutableString *addresses = [[NSMutableString alloc]initWithString:@"DNS Addresses \n"];
res_state res = malloc(sizeof(struct __res_state));
int result = res_ninit(res);
if ( result == 0 )
{
for ( int i = 0; i < res->nscount; i++ )
{
NSString *s = [NSString stringWithUTF8String : inet_ntoa(res->nsaddr_list[i].sin_addr)];
[addresses appendFormat:@"%@\n",s];
NSLog(@"%@",s);
}
}
else
[addresses appendString:@" res_init result != 0"];
return addresses;
}
#包括
#包括
#包括
//
-(NSString*)GetDNSServer
{
NSMutableString*地址=[[NSMutableString alloc]initWithString:@“DNS地址\n”];
res_state res=malloc(sizeof(struct__res_state));
int result=res_ninit(res);
如果(结果==0)
{
对于(int i=0;inscount;i++)
{
NSString*s=[NSString stringWithUTF8String:inet\u ntoa(res->nsaddr\u列表[i].sin\u addr)];
[地址和格式:@“%@\n”,s];
NSLog(@“%@”,s);
}
}
其他的
[addresses appendString:@“res_init result!=0”];
返回地址;
}
效果很好。但不要忘记链接libresolv.dylib;-)别忘了自由!我也救了我的命:)我只想问一件事。返回两个值。我怎么知道我要用哪一个?