Форум программистов, компьютерный форум CyberForum.ru

Программа сразу завершается - C++

Восстановить пароль Регистрация
 
master_sheduler
0 / 0 / 0
Регистрация: 12.12.2013
Сообщений: 19
19.11.2015, 19:21     Программа сразу завершается #1
Здравствуйте! Я написал программу с конфигурацией решения Release, при запуске exe-файла программа тут же закрывается, а то что она выводит на экран видно доли секунды. Перепробовал и getch() и system("pause") и тому подобное, не помогло Что делать?
Код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
// Server.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include "iostream"
#include <WinSock2.h>
#include <stdio.h>
#include <conio.h>
#pragma comment (lib, "Ws2_32.lib")
char szReq[60];
 
using namespace std;
 
int main(){
    SetConsoleOutputCP(1251);
    WORD sockVer;
    WSADATA wsaData;
    
    int retVal;
            sockVer = MAKEWORD(2, 2);
 
        WSAStartup(sockVer, (LPWSADATA)&wsaData);
 
        //Создаем сокет
        SOCKET servSock = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
 
        if (servSock == INVALID_SOCKET) {
            cout << "Unable to create socket" << endl;
            WSACleanup();
            return 1;
        }//if
        SOCKADDR_IN sin;
        sin.sin_family = AF_INET;
        sin.sin_port = htons(11111);
        sin.sin_addr.s_addr = INADDR_BROADCAST;
 
        Sleep(10000);
        retVal = bind(servSock, (LPSOCKADDR)&sin, sizeof(sin));
        if (retVal == SOCKET_ERROR) {
            cout << "Unable to bind" << endl;
            WSACleanup();
            return SOCKET_ERROR;
        }//if
 
        /*retVal = listen(servSock, 10);
        if (retVal == SOCKET_ERROR) {
            cout << "Unable to listen" << endl;
            WSACleanup();
            return SOCKET_ERROR;
        }//if*/
 
        SOCKET clientSock;
        for (int i = 0;i < 100;i++)
            clientSock = accept(servSock, NULL, NULL);
 
        if (clientSock == INVALID_SOCKET) {
            cout << "Unable to accept" << endl;
            WSACleanup();
            return SOCKET_ERROR;
        }//if*/
 
 
        retVal = recvfrom(clientSock, szReq, 20, 0, (LPSOCKADDR)&sin, (int*)sizeof(sin));
        if (retVal == SOCKET_ERROR) {
            cout << "Unable to recv" << endl;
            return SOCKET_ERROR;
        }//if
 
        printf("Got the request from client\n%s\n", szReq);
 
        char *szResp = "Response";
 
        cout << "Sending response from server" << endl;
        retVal = sendto(clientSock, szResp, strlen(szResp), 0, (LPSOCKADDR)&sin, (int)sizeof(sin));
 
        if (retVal == SOCKET_ERROR) {
            cout << "Unable to send" << endl;
            return SOCKET_ERROR;
        }//if
 
        closesocket(clientSock);
        closesocket(servSock);
 
        WSACleanup();
        _getch();
        system("pause");
    
    return 0;
}//main
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.11.2015, 19:21     Программа сразу завершается
Посмотрите здесь:

C++ Почему программа сразу закрывается ?
C++ программа завершается аварийно
C++ Проблемы с delete [], программа периодически аварийно завершается на строке с освобождением памяти.
Программа завершается с ошибкой, подскажите почему C++
Программа завершается с ошибкой Killed C++
Программа сразу после ввода закрывается C++
C++ Не завершается программа
Программа не завершается корректно C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mesteriis
 Аватар для Mesteriis
371 / 154 / 40
Регистрация: 08.08.2015
Сообщений: 1,059
Завершенные тесты: 1
19.11.2015, 20:43     Программа сразу завершается #2
Цитата Сообщение от master_sheduler Посмотреть сообщение
Перепробовал и getch() и system("pause") и тому подобное, не помогло Что делать?
А запустить из командной строки и посмотреть вывод?
если вы пробывали getch() и system("pause") и нечего, то программа спится до них!
Yandex
Объявления
19.11.2015, 20:43     Программа сразу завершается
Ответ Создать тему
Опции темы

Текущее время: 17:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru