Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
10 / 9 / 1
Регистрация: 25.12.2019
Сообщений: 335

Как остановить функцию system()?

11.02.2020, 12:57. Показов 3926. Ответов 54
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго дня!

Никак не пойму почему эта функция "частично" игнорирует условие - if
как остановить функцию - system()

Вот код:
C++
1
2
3
4
5
6
7
8
9
if (pravilno == 14)
{cout << "\n Хорошо, но один ответ - не верный! ";
system("start C://PROGRAMMING/MYPROGRAMM/programm-test/version_2/sound/sound2.wav");
}
 
if (pravilno == 13)
{cout << "\n Результат не очень, 2 ответа - не верны! ";
system("start C://PROGRAMMING/MYPROGRAMM/programm-test/version_2/sound/sound3.wav");
}
При выполнении первого условия все работает как надо, но функция игнорирует второе условие и запускает звуковой файл - sound3.wav после завершения первого.
cout - ведет себя как надо!


пробовал - return(1), system("pause") не помогает!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.02.2020, 12:57
Ответы с готовыми решениями:

Как остановить выполняемую функцию?
Доброго времени суток. :) Перейду к проблемме: Для моей программы нужна кнопка &quot;отмена&quot; так вот а как можно остановить...

Как перевести функцию system() на английский?
Как сделать так, например, чтобы system(&quot;pause&quot;) выдало сообщение на английском, хотя ОС у меня русская? Я так понимаю тут в настройки оси...

переменную в функцию system
#include &lt;iostream&gt; using namespace std; int main() { char* namefile = &quot;test.txt&quot;; system(&quot;notepad &quot;namefile); //error } ...

54
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
12.02.2020, 12:10
Студворк — интернет-сервис помощи студентам
Проигрывать wav через стороннее приложение, когда есть возможность сделать это без него - абсурд.

C++
1
2
3
4
5
6
7
8
#include <windows.h>
#include <mmsystem.h>
 
bool PlayWavFile(const wchar_t* filename, bool asynchronously)
{
  unsigned flags = SND_FILENAME | (asynchronously ? SND_ASYNC : 0);
  return PlaySoundW(filename, 0, flags);
}
Вот видео, я не стал заливать на ютуб, просто посмотри.
1
 Аватар для COKPOWEHEU
4135 / 2713 / 433
Регистрация: 09.09.2017
Сообщений: 12,046
12.02.2020, 12:15
Уж лучше через стороннее, чем через winapi. Стороннее хотя бы установить можно если что, да и разнообразие форматов повыше.
1
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
12.02.2020, 12:20
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Стороннее хотя бы установить можно если что,
а что с WinAPI не так?
1
10 / 9 / 1
Регистрация: 25.12.2019
Сообщений: 335
12.02.2020, 12:20  [ТС]
БЛАГОДАРЮ!
сейчас занят сжатием кода, ну то есть пытаюсь эти 15 блоков переписать циклами. Работает но криво, ищу косяки
Уж коли медийная часть заработала, переключился пока снова на логику...
Как опробую ваши рекомендации, обязательно здесть отпишу!
0
 Аватар для COKPOWEHEU
4135 / 2713 / 433
Регистрация: 09.09.2017
Сообщений: 12,046
12.02.2020, 13:36
Цитата Сообщение от Verevkin Посмотреть сообщение
а что с WinAPI не так?
Непереносимость.
Кликните здесь для просмотра всего текста
В обоих смыслах

Цитата Сообщение от R_U_S_V Посмотреть сообщение
пытаюсь эти 15 блоков переписать циклами
Это не циклами надо переписывать, а свести к "базе данных". То есть оформить текст вопроса и шаблон ответа в какую-нибудь структуру (можно и правда в struct, но не обязательно), потом из них собрать массив. И эту же структуру передавать в функцию проверки.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
typedef struct{
  wchar_t text[200];
  wchar_t ans[20];
}Question;
 
signed char Ask( Question &ex ){
  wchar_t ans[20];
  wprintf(L"%ls", ex->text);
  wscanf(L"%ls", ans);
  if(wcscasecmp( ans, ex->ans ) == 0){
    wprintf(L"Correct!\n");
    return 1;
  }else{
    wprintf(L"Wrong\n");
    return 0;
  }
}
1
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
12.02.2020, 13:46
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Непереносимость
А, я понял. Под Linux, MacOS и ведроид нету функций воспроизведения wav-файлов? Так бы сразу и сказал.
1
10 / 9 / 1
Регистрация: 25.12.2019
Сообщений: 335
12.02.2020, 13:55  [ТС]
))) да, конечно! тока чуть попозже))
А пока вот с этим борюсь

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
for (int i=0;  i<=size;  i++)                        // перебираем элементы массива по порядку
{
cout << question[i] << ' ';
cin >> ch;
 
 
if ((i<=2)||(i==6)||(i==7)||(i==9)||(i==10))
 
    {
     if(ch == d)
       {cout << " правильно 1! \n"; pravilno ++;}
     else if (ch == n)
       {cout << " не правильно 1! \n";}
     else if (ch != d && ch != n)
        cout << " не правильный символ 1! \n";
    }
 
 
else if ((i==3)||(i==4)||(i==5)||(i==8)||(i==11)||(i==12)||(i==13)||(i==14))
    {
     if(ch == n)
       {cout << " правильно 2! \n"; pravilno ++;}
     else if (ch == d)
       {cout << " не правильно 2! \n";}
     else if (ch != d && ch != n)
        cout << " не правильный символ 2! \n";
    }
}

условия перепишу, как заработает - неправильный символ. там while походу надо!
0
 Аватар для COKPOWEHEU
4135 / 2713 / 433
Регистрация: 09.09.2017
Сообщений: 12,046
12.02.2020, 14:13
Цитата Сообщение от Verevkin Посмотреть сообщение
А, я понял. Под Linux, MacOS и ведроид нету функций воспроизведения wav-файлов? Так бы сразу и сказал.
То есть для вас "невозможно через winapi" и "невозможно в принципе" - синонимы. Воистину, нет жизни вне майкрософта!
Цитата Сообщение от R_U_S_V Посмотреть сообщение
А пока вот с этим борюсь
А чем мой вариант не устроил? Хардкодить ответы это крайне неудобная и негибкая практика.
1
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
12.02.2020, 14:15
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
То есть для вас "невозможно через winapi" и "невозможно в принципе" - синонимы.
Я этого не говорил. Это ты сказал.
В моём лексиконе нет слова "невозможно".
1
10 / 9 / 1
Регистрация: 25.12.2019
Сообщений: 335
12.02.2020, 14:17  [ТС]
меня не неустроил, я пока не могу его осознать!
вам за вариант спасибо, скопировал, и буду его смотреть как пройду это в книжке
0
 Аватар для COKPOWEHEU
4135 / 2713 / 433
Регистрация: 09.09.2017
Сообщений: 12,046
12.02.2020, 15:20
Verevkin, затрудняюсь как-то иначе трактовать 46-й пост, где вы приравняли высказывание "winapi есть только под windows" к "в других системах нет функций вывода wav файлов".
1
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
12.02.2020, 15:26
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
затрудняюсь как-то иначе трактовать 46-й пост, где вы приравняли высказывание "winapi есть только под windows" к "в других системах нет функций вывода wav файлов".
Да чо ты врёшь-то прямо в глаза?
Вот 46 пост:

Никаких намёков и подтекста. Я хотел спросить только то, что спросил и ничего никуда не приравнивал.
1
 Аватар для COKPOWEHEU
4135 / 2713 / 433
Регистрация: 09.09.2017
Сообщений: 12,046
13.02.2020, 10:08
Цитата Сообщение от Verevkin Посмотреть сообщение
Да чо ты врёшь-то прямо в глаза?
Отлично! Ты привел скриншот, подтверждающий мое высказывание и обвиняешь меня во лжи.
Впрочем, могу повторить то же самое по-другому. На фразу "winapi не переносимая" ты отвечаешь, что
Цитата Сообщение от Verevkin Посмотреть сообщение
А, я понял. Под Linux, MacOS и ведроид нету функций воспроизведения wav-файлов? Так бы сразу и сказал.
То есть мало того, что приписываешь мне какую-то чушь, но и, очевидно, не делаешь различия между этой чушью и изначальным высказыванием.
1
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
13.02.2020, 10:15
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
На фразу "winapi не переносимая" ты отвечаешь, что
Цитата Сообщение от Verevkin Посмотреть сообщение
А, я понял. Под Linux, MacOS и ведроид нету функций воспроизведения wav-файлов?
Это вопрос был, а не ответ.
1
 Аватар для COKPOWEHEU
4135 / 2713 / 433
Регистрация: 09.09.2017
Сообщений: 12,046
13.02.2020, 12:38
По форме вопрос, по смыслу - утверждение.
Потому что задать добросовестный вопрос (когда спрашивающий действительно хочет узнать ответ) такого типа для вас невозможно.
Так что предлагаю переформулировать тот пост в законченном виде: входящие данные - логика - заключение.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.02.2020, 12:38

Передача строки в функцию system
можно ли каким либо образом передать system значение String допустим есть string c=&quot;primer&quot;; system(c); чтобы system принял...

Ping...неудается с функцию system поместить переменную
неудается с функцию system поместить переменную...при запуске выводит что неудалось найти узел string...как запихать переменные в system? ...

Как остановить таймер System.Threading.Timer
Здравствуйте! Пытаюсь написать простую программу &quot;Секундомер&quot; с использованием класса System.Threading.Timer. (проект во вложении) ...

Как остановить функцию если
Есть функция, которая подставляет поддомен согласно выбранному городу и делает редирект на соответсвующую страницу function...

Как временно остановить функцию?
Здравствуйте! Голову сломал, не могу понять вторые сутки... Сделал скрипт перетаскивание объекта, но в определеный момент нужно, чтоб...


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

Или воспользуйтесь поиском по форуму:
55
Ответ Создать тему
Новые блоги и статьи
Как надо было делать правильно - вообще не слушать ИИ, его дело - текст.
Hrethgir 15.07.2026
А вообще надо было делать не так, чтобы не исправлять ошибку https:/ / www. cyberforum. ru/ blogs/ 223907/ 10996. html , правильно было : удалил кнопку, а потом добавил её. Всё это стресс конечно. Почему?. . .
Знаете, от чего появляется стресс?
kumehtar 15.07.2026
Стресс появляется оттого, что вы, зная как поступить правильно, делаете наоборот. Ларри Уингет
Нас бьют, а мы крепчаем? Какая чушь!
kumehtar 15.07.2026
Вот это вот бытующее мнение, что человек меняется только под действием проблем, всегда считал вредоносным. Поверь, от проблем у людей появляются не изменения, а нервное расстройство и ПТСР. А. . .
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров В текущей версии модели успешно реализован ключевой механизм. . .
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям Реализованные компоненты: Механизм закисления почвы через протонную помпу Конкуренция между типами микориз pH как триггер сукцессии C/ P соотношение. . .
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы ## О чём эта статья В процессе построения ОДУ-модели (система дифференциальных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru