Câu hỏi này đã được hỏi ở đây: NSNetservice IP addressChuyển đổi [địa chỉ NSNetservice] để ip địa chỉ chuỗi
và ở đây: iPhone: Bonjour NSNetService IP address and port
Tôi đã sử dụng cả hai để có được những nơi tôi đang ở bây giờ. Vấn đề của tôi là phương pháp sau đây tôi có không khá làm việc:
- (NSString *)getStringFromAddressData:(NSData *)dataIn {
struct sockaddr_in *socketAddress = nil;
NSString *ipString = nil;
socketAddress = (struct sockaddr_in *)[dataIn bytes];
ipString = [NSString stringWithFormat: @"%s",
inet_ntoa(socketAddress->sin_addr)]; ///problem here
return ipString;
}
Điều này cho phép một lỗi build nói cả "dereferencing con trỏ đến loại không đầy đủ" và "khai Implicit chức năng 'inet_ntoa'" trên cùng một dòng.
Tôi đã kiểm tra và tôi không nghĩ rằng mình thiếu một số loại khung để có được inet_ntoa
để hoạt động. Bất kỳ ý tưởng những gì tôi đang làm sai? cảm ơn.
Giá trị inet_ntoa chính xác được khấu hao, hãy sử dụng inet_ntop thay thế! – krasnyk