資源簡介
linux下簡單的C/S模式的TCP編程,應(yīng)用select()處理阻塞問題。
setsockopt()處理重啟服務(wù)器出現(xiàn)“Address already in use”的情況。
代碼片段和文件信息
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#define?MAXDATASIZE?256?//
#define?SERVPORT?4444??//服務(wù)器監(jiān)聽端口號
#define?STDIN?0??//標(biāo)準(zhǔn)輸入文件描述符
int?main(int?argcchar?*argv[])
{
char?addr[30];
int?sockfd;
struct?sockaddr_in?serv_addr;//Internet套接字地址結(jié)構(gòu)
char?buf[MAXDATASIZE];?????//用于處理輸入的緩沖區(qū)
char?name[MAXDATASIZE];
char?send_str[MAXDATASIZE];?//最多發(fā)送的字符不能超過256
int?recvbytes;
fd_set?rfd_setwfd_setefd_set;?//select()監(jiān)視讀、寫、異常處理的文件描述符集合??
struct?timeval?timeout;?//本次select()的超時結(jié)束時間
int?ret;?//與server連接的結(jié)果
if(argc<2)
{
printf(“請輸入服務(wù)器IP\n“);
fgets(addr256stdin);
argv[1]?=?(char?*)malloc(sizeof(argv[1
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3610??2013-04-29?17:14??server_chat.c
?????文件???????3228??2013-04-29?16:47??client_chat.c
-----------?---------??----------?-----??----
?????????????????6838????????????????????2
評論
共有 條評論