91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-12
  • 語言: 其他
  • 標簽: linux??ipv6??tcp??udp??socket??

資源簡介

linux下ipv6簡單的tcp/udp socket通信,代碼測試通過,具體可以參考: http://blog.csdn.net/zhengxianghdu/article/details/14106167

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?

#define?MAXBUF?1024

int?main(int?argc?char?**argv)
{
????int?sockfd?len;
????/*?struct?sockaddr_in?dest;?*/?//?IPv4
????struct?sockaddr_in6?dest;??????//?IPv6
????char?buffer[MAXBUF?+?1];

????if?(argc?!=?3)?{
????????printf
????????????(“參數格式錯誤!正確用法如下:\n\t\t%s?IP地址?端口\n\t比如:\t%s?127.0.0.1?80\n此程序用來從某個?IP?地址的服務器某個端口接收最多?MAXBUF?個字節的消息“
?????????????argv[0]?argv[0]);
????????exit(0);
????}
????/*?socket?for?tcp?*/
????/*?if?((sockfd?=?socket(AF_INET?SOCK_STREAM?0))?????if?((sockfd?=?socket(AF_INET6?SOCK_STREAM?0))?????????perror(“Socket“);
????????exit(errno);
????}
????printf(“socket?created\n“);

????/*?初始化服務器端(對方)的地址和端口信息?*/
????bzero(&dest?sizeof(dest));
????/*?dest.sin_family?=?AF_INET;?*/??//?IPv4
????dest.sin6_family?=?AF_INET6;?????//?IPv6
????/*?dest.sin_port?=?htons(atoi(argv[2]));?*/?//?IPv4
????dest.sin6_port?=?htons(atoi(argv[2]));?????//?IPv6
????/*?if?(inet_aton(argv[1]?(struct?in_addr?*)?&dest.sin_addr.s_addr)?==?0)?{?*/?//?IPv4
????if?(?inet_pton(AF_INET6?argv[1]?&dest.sin6_addr)?????????perror(argv[1]);
????????exit(errno);
????}
????printf(“address?created\n“);

????/*?連接服務器?*/
????if?(connect(sockfd?(struct?sockaddr?*)?&dest?sizeof(dest))?!=?0)?{
????????perror(“Connect?“);
????????exit(errno);
????}
????printf(“server?connected\n“);

????/*?接收對方發過來的消息,最多接收?MAXBUF?個字節?*/
????bzero(buffer?MAXBUF?+?1);
????/*?接收服務器來的消息?*/
????len?=?recv(sockfd?buffer?MAXBUF?0);
????if?(len?>?0)
????????printf(“接收消息成功:‘%s‘,共%d個字節的數據\n“
???????????????buffer?len);
????else
????????printf
????????????(“消息接收失敗!錯誤代碼是%d,錯誤信息是‘%s‘\n“
?????????????errno?strerror(errno));

????bzero(buffer?MAXBUF?+?1);
????strcpy(buffer?“這是客戶端發給服務器端的消息\n“);
????/*?發消息給服務器?*/
????len?=?send(sockfd?buffer?strlen(buffer)?0);
????if?(len?????????printf
????????????(“消息‘%s‘發送失敗!錯誤代碼是%d,錯誤信息是‘%s‘\n“
?????????????buffer?errno?strerror(errno));
????else
????????printf(“消息‘%s‘發送成功,共發送了%d個字節!\n“
???????????????buffer?len);

????/*?關閉連接?*/
????close(sockfd);
????return?0;
}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????3185??2013-11-04?10:30??ipv6_simple_tcp_udp\tcp-server-ipv6.c

?????文件???????1025??2013-09-30?16:59??ipv6_simple_tcp_udp\udp-client-ipv6.c

?????文件???????1379??2013-11-04?15:09??ipv6_simple_tcp_udp\udp-server-ipv6.c

?????文件???????2726??2013-11-04?10:31??ipv6_simple_tcp_udp\tcp-client-ipv6.c

?????目錄??????????0??2013-09-30?18:23??ipv6_simple_tcp_udp

-----------?---------??----------?-----??----

?????????????????8315????????????????????5


評論

共有 條評論