Система команд («пауза») не найдена на Linux - PullRequest
0 голосов
/ 29 января 2020
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <cstdlib>

using namespace std;

int main() {
    string line;
    cout << "HW\n";
    getline(cin,line);
    cout << "Your line is - " << line << "\n";
    system("pause");
    return 0;
} 

Я хочу сделать gui безголовый сервер factorio самостоятельно, поэтому мне нужно выполнить c несколько bash сценариев. Я думаю, что мне нужна функция system () для этого?

Я думаю, что у меня проблема с путем пути lib Пожалуйста, не вините неправильно установленный vcpkg. Пути:

/opt/factorio/bin/x64/vcpkg/installed
/usr/include/c++/9/x86_64-redhat-linux
/usr/include/linux
/usr/include/c++/9/tr1

Команда system() не найдена, говорит Visual Studio.

1 Ответ

0 голосов
/ 29 января 2020

system("pause"); предназначен для использования только на Windows. Он запускает программу «1010» «pause» из командной строки и ожидает ее завершения, прежде чем продолжит выполнение вашей программы. Вот почему не рекомендуется использовать его в своем коде, независимо от того, выполняете ли вы код на Windows или Linux.

. Вот лучший способ достичь того же результата:

#include <iostream>
using namespace std;

int main() {
   do {
     cout << '\n' << "Press the Enter key to continue.";
   } while (cin.get() != '\n');

   return 0;
}

вместо:

#include <iostream>
using namespace std;

int main() {
   system("pause");

   return 0;
}
...