藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年6月6日 10:18


c的socket 通訊中如何得到本機ip地址(在線等!!)

c的
socket 通訊中如何得到本機ip地址,寫道sockaddr_in中!謝謝(在線等!!)


謝謝!!

c的socket 通訊中如何得到本機ip地址(在線等!!)

有人能幫幫忙嗎,謝謝!!
我很急的!
在程序中用

c的socket 通訊中如何得到本機ip地址(在線等!!)

:oops:saServer.sin_addr.s_addr = htonl(INADDR_ANY)或用getsockname()

c的socket 通訊中如何得到本機ip地址(在線等!!)

我還是有點不明白,
htonl(INADDR_ANY)
不是表示可以監聽任意斷口麼?
能給我一點具體的代碼麼,
感激萬分!

c的socket 通訊中如何得到本機ip地址(在線等!!)

還有getsockname?
謝謝!

c的socket 通訊中如何得到本機ip地址(在線等!!)

謝謝謝謝!
help∼!

c的socket 通訊中如何得到本機ip地址(在線等!!)

saServer.sin_family = AF_INET;
saServer.sin_port   = htons(1234);
saServer.sin_sin_addr.s_addr = htonl(INADDR_ANY);

bind(sock , (struct sockaddr*)saServer ,sizeof(struct sockaddr) );

listen(sock , 1);.....

c的socket 通訊中如何得到本機ip地址(在線等!!)

謝謝!
還有個問題,如果我想把他輸出,怎麼辦呢?
看看結果!
謝謝, 我對socket不太熟悉!

c的socket 通訊中如何得到本機ip地址(在線等!!)

為什麼都是空的?

我使用char * 輸出,這樣:
char *p;
p = saServer.sin_sin_addr.s_addr;
printf("%s", p);

我的目的是想得到ip,並且組合在字符串內,
下面使用,謝謝!

c的socket 通訊中如何得到本機ip地址(在線等!!)

-->

#include <arpa/inet.h>;
p=inet_ntoa(saServer.sin_addr);
printf("%s\n",p);

c的socket 通訊中如何得到本機ip地址(在線等!!)

Segmentation fault

???

c的socket 通訊中如何得到本機ip地址(在線等!!)

-->

貼出你的代碼!

c的socket 通訊中如何得到本機ip地址(在線等!!)

我還是有點不明白,
htonl(INADDR_ANY)
不是表示可以監聽任意斷口麼?

表示可以接受來自於任何主機的連接請求。這個地方於端口還沒有直接關係,端口是由bind,connet,sendto,recvfrom等這些函數確定的。


能給我一點具體的代碼麼,
感激萬分!

本版討論了很多的socket編程方面的東西,到精華區看看。

c的socket 通訊中如何得到本機ip地址(在線等!!)

-->

那如果我只想接受某一連接請求,該怎麼做??

c的socket 通訊中如何得到本機ip地址(在線等!!)

精華有許多例子

如果只是想監聽一個IP的連接
那麼使用
inet_addr-s_addr=htonl(對方主機地址)//也可以使用inet_ntop
bind inet_addr
listen inet_addr

c的socket 通訊中如何得到本機ip地址(在線等!!)

那如果我只想接受某一連接請求,該怎麼做??

把IP和PORT都寫程固定的,這樣只能就保證是:某一主機對於某一端口的連接請求。

c的socket 通訊中如何得到本機ip地址(在線等!!)

請教無雙::

我在寫ftp
我的目的實際上是把ip得到,組成一定的格式後發送port命令
他其中的組合是

port a,b,c,d,e,f

其中
a b c d 為ip中的四個數字

我看了精華,使用了其中的
etpeername(sockfd, (struct sockaddr *)&sa, &len);

http://www.www.lslnet.com/linux/forum/viewtopic.php?t=64114
這個貼子好像就事你發的, 但是為空!!
請指教!!!謝謝

c的socket 通訊中如何得到本機ip地址(在線等!!)

不會吧
如果是tcp的話可以得到
已連接的UDP也可以得到

你看看錯誤號是多少
和man 中錯誤號說明比較一下



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com