Создание программы на С ++ для выполнения других программ в qnx - PullRequest
0 голосов
/ 20 апреля 2020

Я пытаюсь написать программу на c++ для QNX, которая выполняет другие программы.

Для этого мне нужно обработать 4 файла.

file1
file2.l
file3.c
file4.bin

Алгоритм is

if file1 is not present then execute file2.l
Execute file3.c
Execute file4.bin

Это код, который я пробовал.

#include<fstream>
#include<iostrea>
using namespace std;
int main(){
    ifstream ifile;
    ifile.open("file1");
    if(!ifile){
  //      system("Code to run file2.l program in termnal")

    }

   // system("Code to run file3.c program in termnal")
    system("./file4.bin")

Мне нужно знать, как выполнить file2.l и file3.c, используя c++ в QNX

Ответы [ 2 ]

1 голос
/ 24 апреля 2020

System () предназначена только для выполнения системных функций, таких как «cp» или «shutdown». Для запуска программы вы можете использовать функции spawn () или spawnv ().

0 голосов
/ 24 апреля 2020
#include <iostream>

using namespace std;

inline bool fileCheck(const string &name)
{
    if (FILE *file = fopen(name.c_str(), "r"))
    {
        fclose(file);
        return true;
    }
    else
    {
        return false;
    }
}

int main(void)
{
    // Replace with your own code

    if (fileCheck("time.exe"))
    {
        // exists...
        system("swap.exe");
    }
    else
    {
        // doesn't exists...
        system("swap.exe");
    }

    return 0;
}

Программа сначала создает встроенную функцию для быстрой проверки наличия файла, а затем происходит main (), которая выполняет необходимые вам действия.

...