Для простоты представим, что у нас есть 2 cpp программ (но основная цель этого вопроса - понять, как использовать программы на других языках, например, некоторую cpp программу внутри python программы). Первая программа умножает 2 аргумента:
int main(int argc, char** argv) {
if (argc == 2)
return (*argv[1]) * (*argv[2]);
}
Затем я компилирую его как multiply
и хочу использовать во второй программе:
#include <iostream>
int main() {
std::cout << system("./multiply 2 5") << '\n';
}
Но, во-первых, system
не t возвращает возвращаемое значение программы, которую он вызвала ($?
), во-вторых, return (*argv[1]) * (*argv[2])
морально неверен, потому что main
должен возвращать код ошибки, а не результат функции.
Как я могу добиться своего цель тогда? Использование файлов для доступа к данным обременительно.