免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1287 | 回复: 7
打印 上一主题 下一主题

我初学UNIX进程,编了个小程序 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-10-20 19:15 |只看该作者 |倒序浏览
我初学UNIX进程,编了个小程序
#include <stdio.h>;
#include <sys/types.h>;
#include <unistd.h>;
int
main (void){
        printf ("a\n";
        fork ();
        printf ("b\n";
        fork ();
        printf ("c\n";
exit(0);
}
输出结果:
a
b
c
c
b
c
c
但我把三个pintf中的\n去掉后执行结果是:
abcabcabcabc
我对以上两个结果的由来都不是很清楚,请大家指教
(上面的程序是在Fedora 1中编译执行的)

论坛徽章:
0
2 [报告]
发表于 2004-10-20 19:47 |只看该作者

我初学UNIX进程,编了个小程序

那个\n怎么对程序有这么大影响
大家可以解释一下不?谢谢各位了

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
3 [报告]
发表于 2004-10-20 19:52 |只看该作者

我初学UNIX进程,编了个小程序

不用换行,当然会连到一起了。

不明白你到底不明白什么。

论坛徽章:
0
4 [报告]
发表于 2004-10-20 20:06 |只看该作者

我初学UNIX进程,编了个小程序

我不是指连在一起的问题
第二个结果输出的字母个数明显多些(我就想问这个,为什么会有差别)
我搜了一下论坛 好象是讲缓冲区的问题 只简单的讲了一下 我不是很懂

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
5 [报告]
发表于 2004-10-20 20:25 |只看该作者

我初学UNIX进程,编了个小程序

对啊,就是缓冲区啊。缓冲区没打出去的时候,fork的子进程是连父进程的缓冲区一起复制的。

论坛徽章:
0
6 [报告]
发表于 2004-10-20 20:34 |只看该作者

我初学UNIX进程,编了个小程序

十分感谢aero的回帖
我在以前的帖子中也看你讲到过缓冲区
我想知道这个pintf和缓冲区有什么关系
printf要把缓冲区的所有内容输出吗
你能具体的讲一讲吗

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
7 [报告]
发表于 2004-10-20 20:42 |只看该作者

我初学UNIX进程,编了个小程序

^_^,搜索旧贴是一个好习惯。

我以前讲的很清楚了啊。说过好多遍了,我也不知道该怎么说了。^_^。

还是看看著作吧。这个知识点在APUE的第8章的8.3节有很详细的描述。

论坛徽章:
0
8 [报告]
发表于 2004-10-20 20:51 |只看该作者

我初学UNIX进程,编了个小程序

多谢aero的提点
我学c只看了谭浩强的《C程序设计》 现在看来还是不够了
估计aero提到的著作一时无法看到
如果哪位能在这里提点我 我将感激不尽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP