zoukankan      html  css  js  c++  java
  • S_ISREG、S_ISDIR等系列宏的功能

     1 #include<stdio.h>
     2 #include<stdlib.h>
     3 #include<unistd.h>
     4 #include<string.h>
     5 #include<errno.h>
     6 #include<sys/types.h>
     7 #include<sys/stat.h>
     8 #include<fcntl.h>
     9 
    10 int main(int arg, char *args[])
    11 {
    12 
    13 //    char s[]="abc.txt";
    14     int fd = open(args[1],O_RDONLY);//用读写追加的方式打开文件
    15     if(fd==-1)
    16         printf("err id %s
    ",strerror(errno));
    17     else
    18     {
    19         printf("success fd =%d
    ",fd);
    20 
    21         struct stat buf;
    22         fstat(fd,&buf);
    23         if(S_ISREG(buf.st_mode))//判断文件是否为标准文件
    24         {
    25             printf("%s is charfile
    ",args[1]);
    26         }
    27         if(S_ISDIR(buf.st_mode))//判断文件是否为目录
    28         {
    29             printf("%s is dir
    ",args[1]);
    30         }
    31 
    32         printf("%s size = %d
    ",args[1],buf.st_size);//判断文件的大小
    33         close(fd);
    34 
    35     }
    36     return 0;
    37 }

     fstat和stat的功能基本一致,只是函数中的参数不同

  • 相关阅读:
    UVa 481
    ZOJ 1108 & HDU 1160
    UVa 11450
    UVa 11242
    UVa 750
    UVa 725
    UVa 483
    UVa 10258
    UVa 793
    The Little Girl who Picks Mushrooms HDU 4422 水题类似模拟的一种感觉
  • 原文地址:https://www.cnblogs.com/leejxyz/p/5688648.html
Copyright © 2011-2022 走看看