求脚本如何设置环境变量
http://hi.baidu.com/icoky/blog/item/85b ... f31cf.html 在上述链接里(大部分网上对exit()和_exit())都列举了下面两段程序
(1)#include<stdlib.h>
main()
{
printf ("output begin");
printf ("content in buffer");
exit(0);
}
$gcc exit2.c -o exit2
$./exit2
output begin
content in buffer
(2)#include<unistd.h>
main()
{
printf("output begin");
printf("content in buffer");
_exit(0);
}
$gcc _exit1.c -o _exit1
$./_exit1
output begin
但是我在我的ubuntu上试了下,程序1没有什么大问题,但程序2如果就是按照上述去编译运行后是不会出现printf的结果,但在printf后加上\n就会有不同的结果出现,不知道是什么原因,还请指教
(1)#include<stdlib.h>
main()
{
printf ("output begin");
printf ("content in buffer");
exit(0);
}
$gcc exit2.c -o exit2
$./exit2
output begin
content in buffer
(2)#include<unistd.h>
main()
{
printf("output begin");
printf("content in buffer");
_exit(0);
}
$gcc _exit1.c -o _exit1
$./_exit1
output begin
但是我在我的ubuntu上试了下,程序1没有什么大问题,但程序2如果就是按照上述去编译运行后是不会出现printf的结果,但在printf后加上\n就会有不同的结果出现,不知道是什么原因,还请指教
作者: llxlf2012 发布时间: 2011-06-03
exit 是 C 库函数
_exit 是系统调用
所以 _exit 不会刷掉流缓冲区的东西。。
_exit 是系统调用
所以 _exit 不会刷掉流缓冲区的东西。。
作者: BigSnake.NET 发布时间: 2011-06-03
BigSnake.NET 写道:
exit 是 C 库函数
_exit 是系统调用
所以 _exit 不会刷掉流缓冲区的东西。。
_exit 是系统调用
所以 _exit 不会刷掉流缓冲区的东西。。
你好,我明白你的意思,但我运行程序2后是没有结果的,在printf后面加上\n后才会出现结果,我想问这和介绍的有出入是什么原因造成的?
作者: llxlf2012 发布时间: 2011-06-03