Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

socket±à³Ì(udp tcp)´úÂ뱸Íü C++/C

 sockets£¨Ì×½Ó×Ö£©±à³ÌÓÐÈýÖÖ£¬Á÷ʽÌ×½Ó×Ö£¨SOCK_STREAM£©£¬Êý¾Ý±¨Ì×½Ó×Ö£¨SOCK_DGRAM£©£¬Ô­Ê¼Ì×½Ó×Ö£¨SOCK_RAW£©£» »ùÓÚTCPµÄsocket±à³ÌÊDzÉÓõÄÁ÷ʽÌ×½Ó×Ö(SOCK_STREAM)¡£»ùÓÚUDP²ÉÓõÄÊý¾Ý±¨Ì×½Ó×Ö(SOCK_DGRAM).
1.TCPÁ÷ʽÌ×½Ó×ֵıà³Ì²½Öè
ÔÚʹÓÃ֮ǰÐëÁ´½Ó¿âº¯Êý£º¹¤³Ì->ÉèÖÃ->Link->ÊäÈëws2_32.lib£¬OK£¡
·þÎñÆ÷¶Ë³ÌÐò£º
1¡¢¼ÓÔØÌ×½Ó×Ö¿â
2¡¢´´½¨Ì×½Ó×Ö£¨socket£©¡£
3¡¢½«Ì×½Ó×ְ󶨵½Ò»¸ö±¾µØµØÖ·ºÍ¶Ë¿ÚÉÏ£¨bind£©¡£
4¡¢½«Ì×½Ó×ÖÉèΪ¼àÌýģʽ£¬×¼±¸½ÓÊÕ¿Í»§ÇëÇó£¨listen£©¡£
5¡¢µÈ´ý¿Í»§ÇëÇóµ½À´£»µ±ÇëÇóµ½À´ºó£¬½ÓÊÜÁ¬½ÓÇëÇ󣬷µ»ØÒ»¸öеĶÔÓ¦ÓÚ´Ë´ÎÁ¬½ÓµÄÌ×½Ó×Ö£¨accept£©¡£
6¡¢Ó÷µ»ØµÄÌ×½Ó×ֺͿͻ§¶Ë½øÐÐͨÐÅ£¨send/recv£©¡£
7¡¢·µ»Ø£¬µÈ´ýÁíÒ»¿Í»§ÇëÇó¡£
8¡¢¹Ø±ÕÌ×½Ó×Ö¡£
¿Í»§¶Ë³ÌÐò£º
1¡¢¼ÓÔØÌ×½Ó×Ö¿â
2¡¢´´½¨Ì×½Ó×Ö£¨socket£©¡£
3¡¢Ïò·þÎñÆ÷·¢³öÁ¬½ÓÇëÇó£¨connect£©¡£
4¡¢ºÍ·þÎñÆ÷¶Ë½øÐÐͨÐÅ£¨send/recv£©¡£
5¡¢¹Ø±ÕÌ×½Ó×Ö¡£
·þÎñÆ÷¶Ë´úÂëÈçÏ£º
#include <Winsock2.h>//¼Ó²ÃÍ·Îļþ
#include <stdio.h>//¼ÓÔØ±ê×¼ÊäÈëÊä³öÍ·Îļþ
void main()
{
WORD wVersionRequested;//°æ±¾ºÅ
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1 );//1.1°æ±¾µÄÌ×½Ó×Ö
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 ) {
return;
}//¼ÓÔØÌ×½Ó×ֿ⣬¼Ó²Ãʧ°ÜÔò·µ»Ø
if ( LOBYTE( wsaData.wVersion ) != 1 ||
        HIBYTE( wsaData.wVersion ) != 1 ) {
WSACleanup( );
return;
}//Èç¹û²»ÊÇ1.1µÄÔòÍ˳ö
SOCKET sockSrv=socket(AF_INET,SOCK_STREAM,0);//´´½¨Ì×½Ó×Ö£¨socket£©¡£
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);//ת»»Unsigned shortÎªÍøÂç×Ö½ÚÐòµÄ¸ñʽ
addrSrv.sin_family=AF_INET;
addrSrv.sin_port=htons(6000);
bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));
//½«Ì×½Ó×ְ󶨵½Ò»¸ö±¾µØµØÖ·ºÍ¶Ë¿ÚÉÏ£¨bind£©
listen(sockSrv,5);//½«Ì×½Ó×ÖÉèΪ¼àÌýģʽ£¬×¼±¸½ÓÊÕ¿Í»§ÇëÇó£¨listen£©¡£
SOCKADDR_IN addrClient;//¶¨Ò嵨ַ×å
int len=sizeof(SOCKADDR);//³õʼ»¯Õâ¸ö²ÎÊý£¬Õâ¸ö²ÎÊý±ØÐë±»³õʼ»¯
while(1)
{
SOCKET sockConn=accept(sockSrv,(SOCKADDR*)&addrClient,&len);acceptµÄµÚÈý¸ö²ÎÊýÒ»¶¨ÒªÓгõʼֵ¡£
//µÈ´ý¿Í»§ÇëÇóµ½À´£


Ïà¹ØÎĵµ£º

µÚÁùÕ´𰸠c primer plus

 6.1 ±àдһ¸ö³ÌÐò,´´½¨Ò»¸ö¾ßÓÐ26¸öÔªËØµÄÊý×é,²¢ÔÚÆäÖд洢26¸öСд×Öĸ,²¢ÈøóÌÐòÏÔʾ¸ÃÊý×éµÄÄÚÈÝ.
#include <stdio.h>
int main(void)
{
 char a[26] = {'a', 'b', 'c', 'd', 'e', 'f',
     'g', 'h', 'i', 'j', 'k', 'l',
     'm', 'n', 'o', 'p ......

ѧϰCµÄÃÔ»ó

   ÎÒÒ»Ö±Ïë×öÒ»¸öÈí¼þ³öÀ´£¬Ö»ÊǼòµ¥µÄ£¬±ÈÈç˵һ¸ö¼Ó¼õ³Ë³ýµÄEXE¡£¿ÉÊÇÎÒÖªµÀÎÒ´íÁË£¬ÎÒ×î½üÑ¡ÐÞÁËÒ»Ãŵç×Ó¹¤³ÌÉè¼ÆÓëÖÆ×÷ºó²ÅÁ˽â±à³ÌµÄÄ¿µÄºÍ¹¤¾ßµÄ¶àÑùÐÔ¡£²»Í¬µÄÈí¼þÌṩ²»Í¬µÄ±àÒë»·¾³£¬ÎÒ·¢ÏÖÄ£ÄâÈí¼þµÄÇ¿µÄ¡£ÎÒʱ³£ÏëÎÒÊDz»ÊÇ¿ÉÒÔͨ¹ýÎÒÏÂÔØ°²×°µÄÈí¼þÀ´Ñ§Ï°Ð©Ô´³ÌÐò¡£ÊǵÄÓÐһЩ£¬¿ÉÊÇÍêÈ«¿´²»¶®£¬³ýÁË ......

´ÓÁ½µÀ¾­µäÊÔÌâ̸C/C++ÖÐÁªºÏÌ壨union£©µÄʹÓÃ


´ÓÁ½µÀ¾­µäÊÔÌâ̸C/C++ÖÐÁªºÏÌ壨union£©µÄʹÓÃ
ÊÔÌâÒ»£º±àдһ¶Î³ÌÐòÅжÏϵͳÖеÄCPUÊÇLittle endian»¹ÊÇBig endianģʽ£¿
·ÖÎö£º
×÷Ϊһ¸ö¼ÆËã»úÏà¹Ø×¨ÒµµÄÈË£¬ÎÒÃÇÓ¦¸ÃÔÚ¼ÆËã»ú×é³ÉÖж¼Ñ§Ï°¹ýʲô½ÐLittle endianºÍBig endian¡£Little endianºÍBig endianÊÇCPU´æ·ÅÊý¾ÝµÄÁ½ÖÖ²»Í¬Ë³Ðò¡£¶ÔÓÚÕûÐÍ¡¢³¤ÕûÐ͵ÈÊý¾ÝÀàÐÍ£ ......

pku 2115 C Looooops ͬÓඨÀí

 #include <stdio.h>
long long mod(long long a,long long b)
{
return (a % b + b) % b;
}

struct triple
{
long long d,x,y;
};

long long Euclid(long long a,long long b)
{
if(b == 0)
return a;
else
retu ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ