图控大叔
构图传递思想
阅读从未如此简单!!!
01
前言
推文模式更改说明:为了避免单篇推文内容过长,图控大叔将尝试将测试代码与知识点部分进行分离的方式呈现,即使用两篇推文来完成内容呈现,一篇推文用于进行知识点呈现,另一篇用来承载代码。另外,在推文标题命名上尽量做到仅有【代码】二字的差别,以方便读者查找,望读者知晓!
02
代码
#include
#include
#include
#include
#include
#include
#include
/*
公众号:图控大叔
记录时间:2020-08-09
*/
//文件类型判断函数 此处输入当前目录下的文件名
int file_type_judgment(char *file_name){
struct stat buf;
char *ptr;
bzero(&buf, sizeof(struct stat));
if(lstat(file_name,&buf)<0)
{
printf("乱搞事情???%s文件不存在\n", file_name);
printf("重新来\n");
return -1;
}
if( S_ISREG(buf.st_mode) ) ptr="普通文件";
else if( S_ISDIR(buf.st_mode) ) ptr="目录文件";
else if( S_ISCHR(buf.st_mode) ) ptr="字符特殊文件";
else if( S_ISBLK(buf.st_mode) ) ptr="块特殊文件";
else if( S_ISFIFO(buf.st_mode) ) ptr="管道或FIFO";
else if( S_ISLNK(buf.st_mode) ) ptr="符号链接";
else if( S_ISSOCK(buf.st_mode) ) ptr="套接字";
printf("ptr is %s\n", ptr);
return 0;
}
int main(int argc,char *argv[]){
file_type_judgment(argv[1]);
return 0;
}
03
结尾
本次的代码分享就到这里,与代码同步的知识点在另一命名几乎一致的推文中,需要的读者自行查阅!