Esempio n. 1
0
int main(int argc, char *argv[])
{
    if (argc < 2) {
        perror("argument less");
        exit(EXIT_FAILURE);
    }
    initGrid(argv[1]);
    int sfd;
    char ip[32];
    memset(ip, 0, 32);
    int port = 0;
    Msg msg_recv;
    memset(&msg_recv, 0, sizeof(Msg));
    if (atoi(argv[1]) == 1) {
        sfd = initUdpServer(IP, PORT);
        while (recvFrom(sfd, &msg_recv, sizeof(Msg), ip, &port) != 0) {
            hebing(&msg_recv);
            if (win(msg_recv)) {
                printf("YOU LOSE!\n");
                break;
            }
            move();
            sendTo(sfd, &msg, sizeof(Msg), ip, port);
            if (win(msg)) {
                printf("YOU WIN!\n");
                break;
            }
        }
    } else {
        sfd = initUdpClient();
        while (move(), sendTo(sfd, &msg, sizeof(Msg), IP, PORT) != 0) {
            if (win(msg)) {
                printf("YOU WIN\n");
                break;
            }
            recvFrom(sfd, &msg_recv, sizeof(Msg), ip, &port);
            hebing(&msg_recv);
            if (win(msg_recv)) {
                printf("YOU LOSE!\n");
                break;
            }
        }
    }
    close(sfd);
    return 0;
}
Esempio n. 2
0
MainUdpServer::MainUdpServer()
{
    initUdpServer();
    initRequestGroupList();
}