Linux程序设计(13)第三章:标准I/O库(5)sprintf fprintf rewind remove mkdir rmdir chdir getcwd
1. printf sprintf fprintf
int printf(const char *format,...);
int sprintf(char *s, const char *format,...);
int fprintf(FILE *stream, const char *format,...);
prinh 函数把自己的输出送到标准输出。
fprintf 函数把自己的输出送到一个指定的文件流。
spring 函数把自己的输出和一个结尾空字符写到作为参数传递过来的字符串s里。
这个字符串必须足够容纳所有的输出数据。
2. rewind 指向文件开头
将文件内部的指针重新指向一个流的开头
void rewind(FILE *stream)
3. remove 就是删除文件
int remove(const char *filename)
删除给定的文件名 filename,以便它不再被访问。
如果成功,则返回零。如果错误,则返回 -1,并设置 errno。
4. mkdir rmdir 创建/删除目录
#include <sys/types.h>
#include <sys/stat.h>
int mkdir(const char *pathz mode_t mode);
int rmdir(const char *path);
rmdir系统调用用于删除目录,但只有在目录为空时才行
例子:
(void)mkdir("\tmp\test", S_IRWXU | S_IRWXG | S_IRWXO);
(void)rmdir(pcPath);
5. chdir getcwd 改变/获取文件目录
#include <unistd.h>
int chdir(const char *path);
更改目录
char *getcwd(char *buf, size_t size);
通过调用gdcwd函数来确定自己的当前工作目录
getcwd 函数把当前目录的名字写到给定的缓冲区buf里。
如果目录名的长度超出了参数size给出 的缓冲区长度(一个ERANGE错误),它就返回NULL。
如果成功,它返回指针buf。
例子:
char szCwd[1024];
memset(szCwd, 0, sizeof(szCwd));
if (NULL == getcwd(szCwd, sizeof(szCwd)))
{
//error proc
}
//处理当前目录 szCwd