2016-12-10 4 views
0

Я искал вокруг, и все, что я мог найти, это то, что мне нужен Cygwin. Я установил его, но я не могу найти unistd.h где-нибудь в C:\cygwin64\usr\include. Конечно, я добавил этот путь к «Включить каталоги» в свой проект в VS2015.Как использовать fork() в Visual Studio 2015? (Windows 7 Professional)

То, что я хочу сделать, это быть в состоянии использовать fork() и execv() (или, может быть, execl()execlp(), execvp() ... и т.д.) в C. Я знаю, что простое решение, это просто «Go это сделать в Linux», но VS2015 делает это проще для правильного кодирования.

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

+0

Почему вы хотите использовать 'fork()'? Почему бы просто не использовать win32 api? –

+0

Это мой проект, который я должен сделать для одного из моих классов (операционных систем), и нам нужно изучить fork и exec. –

+0

Я использую ['_beginthread'] (https://msdn.microsoft.com/en-us/library/kdzttdcb.aspx). AFAIK MSVC не имеет «fork». –

ответ

0

fork(), execv(), ... и т. Д. Все являются командами ОС Linux, которые не будут работать в Windows. Поэтому либо вы должны попробовать в Linux-системе, либо использовать виртуальное окно для использования Linux-системы.

+0

Как я уже говорил 'Я знаю, что простое решение - просто« Пойдите делать это в Linux », но VS2015 упрощает правильное кодирование.' Я просто надеюсь, что есть способ сделать это в Windows 7. На самом деле я действительно хочу, чтобы Visual Studio понимала, что я набираю, когда я набираю '#include ' или 'pid_t pid;' и т. Д. Я хочу увидеть ошибку только тогда, когда я действительно набрал что-то неправильно. Прямо сейчас, если я набираю '#include ', include будет выделен красным цветом и скажет: «Не удается открыть исходный файл unistd.h». –

1

unistd.h является файлом unix. Вы не можете использовать его в Windows

+0

Это не дает ответа на вопрос. Когда у вас будет достаточно [репутации] (https://stackoverflow.com/help/whats-reputation), вы сможете [прокомментировать любую запись;] (https://stackoverflow.com/help/privileges/comment) вместо этого , [предоставлять ответы, которые не требуют разъяснений у аськи) (https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can-i -do-вместо этого). – mrun

Смежные вопросы