腾讯笔试题--到底输出几个 -

原创 2017年07月16日 20:18:11

请问下面的程序一共输出多少个“-”?为什么?



结果:


输出为: 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 和 刷新缓冲区结果一样   ...
  • Nathan_f
  • Nathan_f
  • 2017年07月16日 21:48
  • 111

腾讯 程序员 Java 笔试题目

socket 发送100个数据 完整性 可以在包头加个字段表示数据的长度, 验证数据的长度值 或者将数据实体转换为hashcode, 利用一些数据验证算法 比如MD5,是一个将任意长...
  • never_cxb
  • never_cxb
  • 2015年08月29日 22:17
  • 793

IT名企面试:腾讯笔试题

腾讯是国内数一数二的IT企业了。那么每年想要进入腾讯公司的应聘者也是络绎不绝。那么一个好的笔试答卷绝对是脱颖而出的亮点。现在就来看看腾讯笔试题都有哪些内容吧。 腾讯笔试题:const的含义及实现...
  • xzgcbtxq
  • xzgcbtxq
  • 2014年09月26日 19:50
  • 345

腾讯笔试题

1、请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句 2、如何输出源文件的标题和目前执行行的行数 3、两个数相乘,小数点后位数没有限制,请写一个高精度算法 4、写一个病毒 5...
  • gws1229
  • gws1229
  • 2013年08月30日 11:04
  • 512

腾讯一面二面题目

腾讯一面 1、  new&delete 和malloc&free的区别 2、  select 和pool的区别 3、  内存分配有几种方式?请举例说明 答:四种:静态区,bss,堆,栈 4、  解释...
  • sole_cc
  • sole_cc
  • 2015年04月21日 10:31
  • 779

on the fly 到底几个意思

几乎每篇文档都给你来一个on the fly。知乎搜了几次也没记住,干脆把维基百科的解释翻译了一下:On the fly is a phrase used to describe something ...
  • AHAU10
  • AHAU10
  • 2017年03月12日 18:29
  • 251

2016 腾讯笔试题 输出回型矩阵(dfs)

n=1的回型矩阵 1  2  3 8  9  4 7  6  5 n=1的回型矩阵 1  2  3  4 12  13  14  5 11  16  15  6 10  9  8  7 n=1的回型矩...
  • piaocoder
  • piaocoder
  • 2016年04月05日 17:26
  • 1092

团体程序设计天梯赛-练习集 L1-031. 到底是不是太胖了

L1-031. 到底是不是太胖了 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B ...
  • u012181348
  • u012181348
  • 2017年12月03日 23:38
  • 41

腾讯笔试题1

 1 计算 a^b int a = 2;int b = 1;int c = 2;cout 62 根据先序中序求后序3 a[3][4]哪个不能表示 a[1][1]: *(&a[0][0]) *(*(a+...
  • zhdrfirst
  • zhdrfirst
  • 2010年05月04日 20:31
  • 2109

C++腾讯笔试题

#include using namespace std; //产生任意范围的随机数。 int Grial(int i,int j ) { int x = 0; while (!(x...
  • liuhuiyan_2014
  • liuhuiyan_2014
  • 2015年07月12日 12:02
  • 888
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:腾讯笔试题--到底输出几个 -
举报原因:
原因补充:

(最多只允许输入30个字)