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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
master_sheduler
0 / 0 / 0
Регистрация: 12.12.2013
Сообщений: 19
#1

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

19.11.2015, 19:21. Просмотров 214. Ответов 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++
После ввода массива консоль не закрывается, почему? #include &quot;stdafx.h&quot; #include &lt;fstream&gt; #include &lt;stdlib.h&gt; #include &lt;iomanip&gt; ...

Программа не завершается - C++
Здравствуйте! 1) Моя программа на первом же тесте превышает положенное время (она не долго работает, она просто не завершается)....

Программа не завершается корректно - C++
Написал программу, определяющую наибольшее из двух введённых пользователем чисел. Решил усложнить её и завершить её только нажатия,...

программа завершается аварийно - C++
запускаю компилятор, все запустилось, работает (меню из кучи условий if-else). выбираю любой пункт меню и он работает, после этого надо...

Программа завершается с ошибкой Killed - C++
Программа завершается с ошибкой Killed, когда я выделяю очень много динамической памяти, но меньше чем есть в наличии всей памяти. Как...

Зависает и не завершается простейшая, пустая программа - C++
Не завершается выполнение простейшей, пустой программы. После запуска, процесс продолжает висеть в памяти и не завершается даже через...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Mesteriis
373 / 156 / 40
Регистрация: 08.08.2015
Сообщений: 1,107
Завершенные тесты: 1
19.11.2015, 20:43 #2
Цитата Сообщение от master_sheduler Посмотреть сообщение
Перепробовал и getch() и system("pause") и тому подобное, не помогло Что делать?
А запустить из командной строки и посмотреть вывод?
если вы пробывали getch() и system("pause") и нечего, то программа спится до них!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.11.2015, 20:43
Привет! Вот еще темы с ответами:

Рекурсия, почему программа завершается аварийно? - C++
Подскажите, почему не работает рекурсия?? #include &lt;iostream&gt; using namespace std; void fn(int value) { fn(value); } int...

Программа завершается с ошибкой, подскажите почему - C++
Вводится координата шахматной доски где распологается конь, это координата при выводе обозначается &quot;К&quot;,клетки которые бьет конь...

Программа аварийно завершается после оператора scanf - C++
Такая проблема. Я начинающий. Занимаюсь уже вторую неделю. Написал такой код, запускаю программа. Все хорошо, но стоит дойти программе до...

Программа завершается при любых действиях пользователя - C++
Программа заканчивается, даже если пользователь выбрал продолжить программу. В чём проблема? Код программы: #include &lt;conio.h&gt;; ...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru