红联Linux门户
Linux帮助

linux下生成临时文件两个方法

发布时间:2008-02-29 16:05:04来源:红联作者:Modegle
载自"Advanced Linux Programming" By Mark Mitchell, Jeffrey Oldham, Alex Samuel.

有两种方法:

1)使用 mkstemp。使用该函数时文件名需要有个以六个X结尾的命名模板,例如char temp_filename[] = "/tmp/temp_file.XXXXXX"。 使用这个方法,临时文件不会自动删除。可以调用unlink()使得引用计数减一,这样当程序推出时,文件自动删除。

2)使用tmpfile()。该函数已经内部unlink了,所以不用显式减一计数器。

备注,还有mktemp, tmpnam和tempnam。但是因为可靠性和安全性而不推荐使用。
文章评论

共有 2 条评论

  1. 水中石 于 2008-03-02 19:56:57发表:

    (5ty(

  2. Modegle 于 2008-02-29 16:06:56发表:

    1) 从shell里面查看前一次程序执行的返回值($?): % echo $?。 例如,前一次调用成功,这个echo命令将返回0----linux下成功时返回0。

    2) stdout带缓存,所以printf不一定立马打出,但是stderr是不带缓存的