当前位置:首页 > 四级网络工程师 > [9] > 正文内容

[9][9][单选]对于如下C语言程序

[9]8个月前 (02-01)
int main()
{
    printf("Hello World\n");
    fork();
    fork();
    printf("Hello World\n");
}

在UNIX操作系统中正确编译链接后,其正确的运行结果为


共打印出2行Hello World

共打印出3行Hello World

共打印出4行Hello World

共打印出5行Hello World


答案


共打印出5行Hello World


解析


计算机程序设计中的fork()函数的返回值:若成功调用一次返回两个值,子进程返回0,父进程返回子进程ID,否则,出错返回 -1。在程序执行之前有1行Hello World,假设程序正常运行并创建子进程成功,fork()两次共有4个进程,故输出4行Hello World,总共输出5行Hello World。故本题答案选择D选项。涉及考点为第3章进程线程模型。


转载请注明出处。

本文链接:http://pythonopen.com/?id=5905

相关文章

[9][3][单选]中断是操作系统中为提高处理机效率而使用的一种技术,下列选项中,哪一个不是中断而是异常

时钟中断被零除控制台命令存储器校验错答案被零除解析中断是指CPU对系统中或系统外发生的异步事件的响应...

[9][4][单选]对于函数open(),它属于哪一类系统调用

文件操作类进程控制类信息维护类通信传输类答案文件操作类解析open是多种语言的一种函数,C语言中op...

[9][6][单选]进程创建时需要填写进程控制块,下列哪一类信息不需要保存在进程控制块中

进程调度信息进程现场信息进程打开的文件句柄进程用户栈中的信息答案进程用户栈中的信息解析PCB的内容可...

[9][7][单选]某一单核心处理器的计算机系统中共有20个进程,那么,处于就绪状态的进程最多为几个

120190答案19解析单核心处理器的计算机系统中,处于运行状态的进程至多有1个,最少为0个,处于就...

[9][10][单选]有如下C语言程序

void * th_f(void * arg) { &n...