2010-02-24 59 views
7

這個問題已經在這裏問: NSNetservice IP address轉換[NSNetservice地址]到IP地址的字符串

這裏: iPhone: Bonjour NSNetService IP address and port

我用兩個那些讓我在哪裏了。我的問題是下面的方法我還沒有做得比較工作:

- (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; 
} 

這給出了一個生成錯誤說法都「提領指向不完全類型」,並在同一行「的隱式聲明函數‘INET_NTOA’」。

我檢查過了,我不認爲我錯過了一些類型的框架,以使inet_ntoa工作。任何想法我做錯了什麼?謝謝。

+1

實際上,inet_ntoa已折舊,請改用inet_ntop! – krasnyk 2010-05-14 07:56:56

回答

18

如果您收到INET_NTOA的隱式聲明,則可能需要

#include <arpa/inet.h> 

(您可男人INET_NTOA得到這個信息,並瞭解更多關於該功能)

+0

完美運作。非常感謝您的快速響應! – mjdth 2010-02-24 17:14:04

+0

隨着包括你幫助我!我就像是在發生什麼...... – 2014-03-06 01:03:07