腾讯笔试题--到底输出几个 -
2017-07-16 20:18
218 查看
请问下面的程序一共输出多少个“-”?为什么?
结果:
输出为: 6
PS:
有缓冲区\n 和 刷新缓冲区结果一样
结果:
解析:
1.程序一开使,bash产生一个进程P1执行此程序,
2.P1进入程序后,当i=0时,fork()产生一个子进程P2,同时它自己输出一个'-'.
3.P2继承P1的诸如环境变量,PC等环境,P2首现会输出一个'-'.同时此时i=1,会继续执行for循环---P2先fork()出一个子进程P3,同时再输出一个'-'.
4.P3进程为P2的子进程,它会复制其父进程P2的指令,变量值,程序调用栈,环境变量,缓冲区等,它会输出一个'-'
这个呢?
结果:
PS:
输出为8 这是为什么呢?
这是因为printf(“-”);语句有buffer,所以,对于上述程序,printf(“-”);把“-”放到了缓存中,在fork的时候,缓存被复制到了子进程空间,所以,就多了两个,就成了8个,而不是6个。
结果:
输出为: 6
PS:
有缓冲区\n 和 刷新缓冲区结果一样
结果:
解析:
1.程序一开使,bash产生一个进程P1执行此程序,
2.P1进入程序后,当i=0时,fork()产生一个子进程P2,同时它自己输出一个'-'.
3.P2继承P1的诸如环境变量,PC等环境,P2首现会输出一个'-'.同时此时i=1,会继续执行for循环---P2先fork()出一个子进程P3,同时再输出一个'-'.
4.P3进程为P2的子进程,它会复制其父进程P2的指令,变量值,程序调用栈,环境变量,缓冲区等,它会输出一个'-'
这个呢?
结果:
PS:
输出为8 这是为什么呢?
这是因为printf(“-”);语句有buffer,所以,对于上述程序,printf(“-”);把“-”放到了缓存中,在fork的时候,缓存被复制到了子进程空间,所以,就多了两个,就成了8个,而不是6个。
相关文章推荐
- 腾讯笔试题--到底输出几个
- 2012.9腾讯笔试题: 顺序输出到栈, 栈中元素可任意时刻出栈. 求输出序列的可能数
- 2012.9腾讯笔试题: 顺序输出到栈, 栈中元素可任意时刻出栈. 求输出序列的可能数
- 腾讯笔试题 如下代码,result变量的输出结果是多少
- 腾讯笔试题:输入16的倍数个字符串,按格式排版输出
- 腾讯的几个简单笔试题解答
- win32系统里,下面几个sizeof的运行结果是()----腾讯2016研发工程师在线模拟笔试题
- 数据结构基础(11)------------输出字符串的所有组合( Permutation)--腾讯笔试附加题
- 输入一个字符串,输出该字符串中字符的所有组合。(腾讯2014笔试附加题)
- 2016 腾讯笔试题 输出回型矩阵(dfs)
- 网易笔试题:输入一个正整数,若该数能用几个连续正整数之和表示,则输出所有可能的正整数序列。
- 网易笔试题:输入一个正整数,若该数能用几个连续正整数之和表示,则输出所有可能的正整数序列。
- 笔试题 输出金字塔 面试经典
- 腾讯笔试:[编程题] 有趣的数字<最简洁版> map的运用,rbegin()是最后一个值的迭代器。
- 腾讯笔试题:找数目超过总数目一半的红包金额
- 九月十月百度人搜,阿里巴巴,腾讯华为笔试面试八十题(第331-410题)
- 九月十月百度人搜,阿里巴巴,腾讯华为笔试面试八十题(第331-410题)
- Java的字符串里的字符到底占几个字节?
- 最近在线笔试的一些感想和总结,阿里巴巴,腾讯,百度,360。c++研发,机器学习等岗位
- 输入几个数逆序输出