linux UDP client½ÓÊÕ²»µ½Êý¾Ý
ÎÒÔÚlinuxÏÂдÁ˸öUDPµÄserverºÍclientµÄ´úÂ룬
ÏÖÔÚ³öÁËÕâÑùÒ»¸öÎÊÌ⣬
serverÊÕµ½ÁËclientµÄÊý¾Ý£¬²¢»Ø¸´ÁË£¬µ«ÊÇclientÒ»Ö±ÊÕ²»µ½server»Ø¸´µÄÄÚÈÝ£¬£¬ºóÀ´ÎÒÓÃ×¥°ü¹¤¾ß½¨Á¢ÁËÒ»¸öserverÀ´Á¬½Ó֮ǰµÄclient£¬·¢ÏÖ½ÓÊÕµ½µÄclientµÄ¶Ë¿Ú²¢·ÇÎÒ¿ªÊ¼É趨µÄ¶Ë¿Ú£¬
¾ßÌåÈçÏ£º
client½¨Á¢Ò»¸ösocket²¢ÉèÖÃÁ˶˿ÚΪ8019£¬ipΪ192.192.192.210£¬ÓɸÃsocket¶Ôserver·¢ËÍÊý¾Ý£¬È»ºóÓÖʹÓøÃsocketÀ´½ÓÊÜserver»ØÀ¡µÄÊý¾Ý£¬µ«ÊÇserver»ØÀ¡µÄ¶Ë¿Ú²¢·ÇΪ8019£¬ËùÒÔclient²¢Ã»ÓÐÊÕµ½serverµÄÊý¾Ý¡£
ÇëÎÊÔõô½â¾ö£¡
×¢ÒâÍøÂç×Ö½ÚÐò
client¶Ë´úÂëÈçÏ£º
fd=socket(AF_INET,SOCK_DGRAM,0);
inetaddr=inet_addr(IP);
recv_sockaddr.sin_family=AF_INET; recv_sockaddr.sin_addr.s_addr=inetaddr;
recv_sockaddr.sin_port= htons(port);
recvfrom_socket(recv_sock_fd,sock_buf,sizeof£¨sock_buf£©,(sockaddr_t *)(&recv_sockaddr),&sock_len);
sendto_socket(recv_sock_fd, sock_buf, len, (sockaddr_t *)(&recv_sockaddr),sizeof(sockaddr_t));
ÒªÓÃbind½«¶Ë¿ÚºÅ°ó¶¨µ½¿Í»§¶ËÉÏ
¿Í»§¶ËÐèÒªbind£¿
server¶Ë²ÅÒªbind°É¡£
·þÎñÆ÷·´À¡µÄ¶Ë¿ÚºÅÊǶàÉÙ
ͨ¹ý×¥°ü¹¤¾ß·¢ÏÖ£¬Ã¿´Îclient·¢Ë͹ýÀ´µÄÊý¾Ý¶Ë¿Ú²»È·¶¨
·þÎñ¶ËbindµÄ¶Ë¿ÚΪ801
Ïà¹ØÎÊ´ð£º
¸ÚλְÔð:
1.²ÎÓë²úÆ·µÄ¹æ»®Éè¼Æ£»
2.Linux »·¾³ÏÂvsftp¡¢qmail¿ªÔ´´úÂëµÄ¶þ´Î¿ª·¢;
3.¿Í»§¶Ëacitve xµÄ¿ª·¢£»
ÈÎÖ°ÒªÇó:
1.ÓÐlinux c ±à³Ì¾Ñ飬Äܱàд linux shell script;
2.ÓÐVC ±à³Ì¾Ñ飬ÄÜ ......
¸ø¸öµØÖ·£¬»òÕß·¢µ½ÎÒÓÊÏäÒ²ÐÐ wrongagain98@163.com
×îºÃÊÇÊÓÆµµÄ£¬²»ÊÇÊÓÆµÆÕͨµÄÒ²ÐС£
Ö÷ÒªÊÇÁ½·½Ã棺
1.ÔõÑù±à¼¡¢±àÒëºÍµ÷ÊÔ³ÌÐò¡£Ï£ÍûÄÜÒ»²½²½½²Çå³þ£¬ÈçºÎ°²×°¡¢ÈçºÎÅäÖõȡ£²»Òª¾Íֻ˵¾ä¡°¾ÍÓ ......
ÄÄλ´óÏÀ×ö¹ýÄÚºË̬µÄUDPͨÐŰ¡£¿
СµÜʹÓÃstruct socket *sock½á¹¹ÄܽøÐÐͨÐÅÁË£¬µ«ÊÇÎÞ·¨ÏñÓû§Ì¬³ÌÐòÒ»ÑùʹÓÃpoll»òÕßselect¡£
ÓÐд¹ýµÄ´óÏÀÄÜ·ñ¸øµãÌáʾ»òÕß´úÂëÆ¬¶Î°¡£¿
ÏÈл¹ýÀ²£¡£¡£¡
û×ö¹ý¡£ ......
ÎÊÌâÒÀ¾É¡£¡£ÒÔΪ×Ô¼º½â¾öÁË
Ϊʲôioctl(fd,I2C_SLAVE,0x50) ÕýÈ·£¬Õâ¸öÊÇEEPROM
¶øioctl(fd,I2C_SLAVE,0xea) ÔòÌáʾINVALID ARGUMENT£¿ Õâ¸öÊÇI/OÀ©Õ¹Æ÷¼þ
¿ÉÒԿ϶¨µÄÊÇ£¬Ó²¼þûÎÊÌâµÄ£¬ÒòΪ±ðµÄCPU²»ÓÃl ......
Ä¿±ê£ºµ±ÍøÂçÖÐÓÐÊý¾Ýµ½´ï»òÕß³¬Ê±£¬³ÌÐò½øÈëÏÂÒ»´ÎÑ»·¡£
ÎÊÌ⣺select()º¯Êý²»Æð×÷Ó㬳ÌÐò²»»áÔÚselectµÄµØ·½×èÈûÒ»Ã룬²¢ÇÒµ±ÍøÂçÉÏÓÐÊý¾ÝµÄʱºò£¬selectµÄ·µ»ØÖµÈÔȻСÓÚ0
#include <s ......