N
neocool
Guest
Hello,
Ako ay nagsisikap upang lumikha ng isang server at isang client gamit c.Paggamit ng Dev C 4.9.8.0 compiler, hindi ako sumulat ng libro ang aking code.
Una sa lahat, ang mga halimbawa ko na natagpuan sa internet gamitin socket.h, habang ang bersyon na ito ng compier ay hindi ito, lamang winsock.h
Kaya, ako ay nabago ang # isama <winsock.h> sa aking mga file.
Kapag ako ay sumulat ng libro, ito ay nagbibigay sa akin ang mga error redefinition tulad ng "struct in_addr", INADDR_ANY, IN_CLASS_HOST, IN_CLASSA at iba pa ..Hindi ko alam kung saan ito kumuha's doubles mula sa ..
Ang anumang tulong ay appreciated.
Salamat
Ito ang aking code:
--------------------------
# isama <string.h>
# isama <sys/types.h>
/ / # isama <sys/socket.h>
# isama <winsock.h>
# isama <netinet/in.h>
# define MYPORT 1,026 / / koneksyon port para sa ComBlock
# define BACKLOG 2 / / kung gaano karaming mga nakabinbin na mga koneksyon sa pila ay matagalan
pangunahing ()
(
int sockfd, new_fd; / / makinig sa sock_fd, ang mga bagong koneksyon sa new_fd
struct sockaddr_in my_addr; / / ang aking address na impormasyon
struct sockaddr_in their_addr; / / address connector ang impormasyon ng
int sin_size;
int lenof_buf = 8,192; / / max packet size = 8K
int bytes_received;
magpawalang-bisa char * buf = [];sockfd = socket (AF_INET, SOCK_STREAM, 0);
/ / Error checking tinanggal na
my_addr.sin_family = AF_INET; / / host byte order
my_addr.sin_port = htons (MYPORT); / / maikling, network byte order
my_addr.sin_addr.s_addr = INADDR_ANY; / / auto-punuin ng aking mga IP
memset (& (my_addr.sin_zero), '\ 0',
<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="Malamig" border="0" />
; / / Zero ang magpahinga ng ang struct
/ / Error checking tinanggal na
sin_size = sizeof (struct sockaddr_in);
magbigkis (sockfd, (struct sockaddr *) & my_addr, & sin_size);
makinig (sockfd, BACKLOG);
new_fd = tanggapin (sockfd, (struct sockaddr *) & their_addr, & sin_size);
bytes_received = recv (new_fd, & buf, lenof_buf, 0);
printf ( "% c", buf);
)---------------------------------------
Ako ay nagsisikap upang lumikha ng isang server at isang client gamit c.Paggamit ng Dev C 4.9.8.0 compiler, hindi ako sumulat ng libro ang aking code.
Una sa lahat, ang mga halimbawa ko na natagpuan sa internet gamitin socket.h, habang ang bersyon na ito ng compier ay hindi ito, lamang winsock.h
Kaya, ako ay nabago ang # isama <winsock.h> sa aking mga file.
Kapag ako ay sumulat ng libro, ito ay nagbibigay sa akin ang mga error redefinition tulad ng "struct in_addr", INADDR_ANY, IN_CLASS_HOST, IN_CLASSA at iba pa ..Hindi ko alam kung saan ito kumuha's doubles mula sa ..
Ang anumang tulong ay appreciated.
Salamat
Ito ang aking code:
--------------------------
# isama <string.h>
# isama <sys/types.h>
/ / # isama <sys/socket.h>
# isama <winsock.h>
# isama <netinet/in.h>
# define MYPORT 1,026 / / koneksyon port para sa ComBlock
# define BACKLOG 2 / / kung gaano karaming mga nakabinbin na mga koneksyon sa pila ay matagalan
pangunahing ()
(
int sockfd, new_fd; / / makinig sa sock_fd, ang mga bagong koneksyon sa new_fd
struct sockaddr_in my_addr; / / ang aking address na impormasyon
struct sockaddr_in their_addr; / / address connector ang impormasyon ng
int sin_size;
int lenof_buf = 8,192; / / max packet size = 8K
int bytes_received;
magpawalang-bisa char * buf = [];sockfd = socket (AF_INET, SOCK_STREAM, 0);
/ / Error checking tinanggal na
my_addr.sin_family = AF_INET; / / host byte order
my_addr.sin_port = htons (MYPORT); / / maikling, network byte order
my_addr.sin_addr.s_addr = INADDR_ANY; / / auto-punuin ng aking mga IP
memset (& (my_addr.sin_zero), '\ 0',
<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="Malamig" border="0" />
; / / Zero ang magpahinga ng ang struct
/ / Error checking tinanggal na
sin_size = sizeof (struct sockaddr_in);
magbigkis (sockfd, (struct sockaddr *) & my_addr, & sin_size);
makinig (sockfd, BACKLOG);
new_fd = tanggapin (sockfd, (struct sockaddr *) & their_addr, & sin_size);
bytes_received = recv (new_fd, & buf, lenof_buf, 0);
printf ( "% c", buf);
)---------------------------------------