資源簡介
linux C語言 socket通信聊天小程序

代碼片段和文件信息
#include?“head.h“
int?sockfd;
int?main(int?argcchar?*argv[])
{
struct?sockaddr_in?servaddr;//建立IPv4地址族結構
int?chose;
int?ret;
if(argc?2)?//判斷是否帶參數
{
perror(“Error?input“);
return?-2;
}
//?建立套接字?成功返回非負數的套接字,失敗返回-1??
//?AF_INET?(IPv4)地址族
//?SOCK_STREAM?(TCP)創建套接字類型?
if((sockfd?=?socket(AF_INETSOCK_STREAM0))?==?-1)
{
perror(“Error?opening?socket“);
return?-1;
}
//ipv4地址族結構賦值
servaddr.sin_family?=?AF_INET?;?//填寫主機字節序的地址結構類型IPv4
/*?htons()函數將主機字節序列轉換為網絡字節序?*/
servaddr.sin_port?=?htons((uint16_t)ECHO_PORT);?//?網絡字節序的端口號
/*inet_pton()把字符串src轉換程ip地址保存在dst中?*/
inet_pton(AF_INETargv[1]&servaddr.sin_addr.s_addr);??//存放ipv4地址,地址值為網絡字節序
//連接遠程主機?地址結構轉換為通用地址結構
if(-1?==?(ret?=?connect(sockfd(struct?sockaddr*)&servaddrsizeof(servaddr))))
{
perror(“connect?error?11“);
exit(0);
}
do{
main_menu(); ?
printf(“選擇:“);
scanf(“%d“&chose);
fflush(stdout);
clean_in();
????switch(chose){
? case?1://注冊
client_regist(sockfd&servaddr);
break;
case?2://登錄
main_client(&servaddr);
break;
case?3://退出系統
system(“clear“);
exit(0);
default:
printf(“選擇錯誤\n“);
break;
}
}while(1);//是否繼續
?// pthread_create(&readerNULL(void?*)(read_fd)&sockfd&sockfd);
// write_fd(sockfd);
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????12918??2013-02-20?09:12??client\client
?????文件???????1696??2013-02-19?16:50??client\client.c
?????文件???????1976??2013-02-20?09:12??client\client.o
?????文件???????1538??2013-02-19?23:15??client\head.h
?????文件???????3980??2013-02-19?23:59??client\main_client.c
?????文件????????471??2013-01-31?14:00??client\main_client.h
?????文件???????4640??2013-02-20?09:12??client\main_client.o
?????文件????????187??2013-01-29?09:20??client\makefile
?????文件????????152??2013-01-28?10:15??client\menu.c
?????文件?????????82??2013-01-28?10:16??client\menu.h
?????文件????????936??2013-02-20?09:12??client\menu.o
?????文件???????3405??2013-01-29?23:03??client\register.c
?????文件????????389??2013-01-29?14:39??client\register.h
?????文件???????3424??2013-02-20?09:12??client\register.o
?????文件???????1897??2013-02-18?14:50??server\commend.c
?????文件????????117??2013-01-29?17:39??server\commend.h
?????文件???????2724??2013-02-20?09:12??server\commend.o
?????文件??????13292??2013-02-20?09:13??server\dateDB
?????文件???????2385??2013-02-19?23:14??server\head.h
?????文件???????2549??2013-02-19?22:46??server\li
?????文件????????535??2013-01-30?14:38??server\li
?????文件???????1588??2013-02-20?09:12??server\li
?????文件??????21636??2013-02-20?09:12??server\main
?????文件??????10535??2013-02-20?09:16??server\main_server.c
?????文件????????304??2013-02-19?20:43??server\main_server.h
?????文件???????8800??2013-02-20?09:12??server\main_server.o
?????文件????????213??2013-01-29?21:00??server\makefile
?????文件???????1911??2013-01-31?10:27??server\save_server.c
?????文件????????296??2013-01-30?16:08??server\save_server.h
?????文件???????2016??2013-02-20?09:12??server\save_server.o
............此處省略8個文件信息
- 上一篇:des64位拓展成128位
- 下一篇:c++學生成績管理系統課程設計
評論
共有 條評論