码迷,mamicode.com
首页 > 系统相关 > 详细

Linux 文件管理

时间:2016-08-20 21:53:21      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:

//read函数
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

/*
 STDIN_FILENO:标准输入,值是0
 STDOUT_FILENO:标准输出,值是1
 STDERR_FILENO:标准错误,值是2
 头文件是 unistd.h

read(文件标识符,缓冲区,缓冲区大小)函数是从某个文件中读取缓冲区大小的数据
ssize_t read(int fd, void *buf, size_t count); read()相比于scanf()优势在于read()可以读取空格,而scanf()遇到空格结束 但是read不能将数字字符串直接转化成int型,需要调用atoi()函数 atoi()函数的头文件是stdlib.h,功能是将字符串转成数字
*/ int main(int arg,char *args[]) { char buf[50]={0}; int numx=0; int index=read(STDIN_FILENO,buf,sizeof(buf)); printf("返回值是%d,输入字符串是%s\n",index,buf); numx=atoi(buf); printf("输入的数字是%d\n",numx); return 0; }

 

//write函数
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>

/*
ssize_t write(int fd, const void *buf, size_t count);
write()函数向指定文件标识符输出缓冲区数据
 */

int main(int arg,char *args[])
{
    char buf[50]={0};
    strcpy(buf,"fly with you!\n");
    int index=write(STDOUT_FILENO,buf,strlen(buf));
    printf("返回值是%d,\n",index);
    return 0;
}

 

//open函数|close()函数
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>
#include <errno.h>

/*
 int open(const char *pathname, int flags);
Opne试图打开参数pathname中的一个文件。
参数flags指定访问该文件的方式。
必须把flags设置为O_RDONLY,O_WRONLY,O_RDWR,O_CREAT,O_APPEND分别表示只读、只写、读写、如果文件存在就创建、追加。
open成功后会返回一个文件描述符。
open失败后会返回-1,并设置errno变量

 errno是int型,表示错误编号,头文件是errno.h
 strerror()函数是打印错误信息,头文件是string.h
 */

int main(int arg,char *args[])
{
    if(arg<2)
    {
        printf("请输入一个参数!\n");
        return 0;
    }
    int fd=open(args[1],O_RDONLY);
    if(fd==-1)
    {
        printf("错误信息:%s\n",strerror(errno));
    }else
    {
        printf("文件标识符是%d\n",fd);
        char buf[100]={0};
        //读取当前文件的内容
        read(fd,buf,sizeof(buf)-1);
        printf("%s\n",buf);
        close(fd);
    }
    return 0;
}

 

Linux 文件管理

标签:

原文地址:http://www.cnblogs.com/zhanggaofeng/p/5791302.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!