Получение параметров командной строки - PullRequest
0 голосов
/ 13 мая 2011

Как я могу сделать исполняемый файл для представления параметров функции в качестве параметров командной строки. Я знаю об использовании

int main( int argc, char **argv )

Есть ли альтернативы? Можно ли вызвать эту программу из скриптового языка, такого как javascript?

Ответы [ 3 ]

1 голос
/ 13 мая 2011

Функция main обеспечивает точку входа для исполняемых файлов.Таким образом, ответ - нет, вы не можете просто представить функцию, которая вызывается из языка сценариев, такого как javascript.

Я знаю о возможностях включения доступа к библиотекам C или C ++ и функциям для определенных языков сценариев, таких какPython, Ruby, Lua и т. Д. Если вы хотите использовать функции для любого из них, я могу предложить SWIG , Boost :: Python или luabind .Я уверен, что есть много других библиотек, которые предоставляют интерфейсы для языков сценариев, и кто знает, даже для javascript.

Надеюсь, я правильно понял вопрос:)

0 голосов
/ 13 мая 2011

Вам нужно написать свою программу в виде файла DLL (Windows) или .so (UNIX), который не имеет main ().Для вызова этого из языка сценариев обычно требуется код-обертка для преобразования между переменными языка сценариев и соглашениями в C. Хотя многие языки сценариев написаны на C, вы не можете передавать переменные напрямую между ними без какого-либо преобразования.

0 голосов
/ 13 мая 2011

Это возможно. Тем не менее, это очень плохо рекомендуется (и, как правило, не является поддерживаемой функцией, когда это возможно). Разоблачение собственного исполняемого кода для любого скрипта, подобного этому, может очень и очень плохо закончиться.

Я боюсь, что это очень похоже на покупку пива для несовершеннолетних ... Я знаю, что вы все равно попытаетесь сделать это, но я не собираюсь помогать вам просрочка.

(серьезно; не делайте этого. Найдите способы расширить свой язык сценариев библиотеками, как @Constantinius, рекомендованный выше).

Удачи!

...