7

fork() を定義するライブラリは何ですか。fork() の使い方を学んでいます。fork() が機能するには標準 I/O ライブラリ :stdio.h で十分であることがわかりましたが、私の場合は当てはまりません。

で使用gccCode::BlocksていますWindows 8 Pro

私のコードは次のとおりです。

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<malloc.h>
#include <time.h>

int main(void)
{

    pid_t process;
    process = fork();

    if(process< 0)
    {
        printf("fork failed");
    }
    if(process > 0)
    {
        printf("\nParent Process Executed");
    }

    if(process == 0)
    {
        printf("\nChild Process Executed");
    }
    return 0 ;
}

私が得る正確なエラーは次のとおりです。

useoffork.o:useoffork.c:(.text+0xf): 「フォーク」への未定義の参照

4

3 に答える 3

4

C 標準ライブラリ (glibc)fork()は、最終的に UNIX/Linux 固有のシステム コールを呼び出してプロセスを作成する実装を実装しています。Windows では、MSDNCreateProcess()のこの例を参照してください。

注: Cygwinfork()は単なるラッパーです。「fork() はどのように実装されていますか?」CreateProcess()を参照してください。

于 2012-11-30T10:30:33.820 に答える
3

Windows 8 Pro の Code::Blocks で gcc を使用しています

forkあなたは窓を持っていません。ただし、cygwin などを使用できます。

于 2012-11-30T10:27:13.333 に答える