随笔分类 - C/C++
C/C++技术
摘要:在使用这个结构体和方法时,需要引入:<sys/types.h><sys/stat.h>struct stat这个结构体是用来描述一个linux系统文件系统中的文件属性的结构。可以有两种方法来获取一个文件的属性:1、通过路径:int stat(const char *path, struct stat *struct_stat);int lstat(const char *path,struct stat *struct_stat);两个函数的第一个参数都是文件的路径,第二个参数是struct stat的指针。返回值为0,表示成功执行。执行失败是,error被自动设置为下
阅读全文
摘要:在学习linux中posix api时,遇到了一个目录文件下面一条目录信息的结构体struct dirent{ long d_ino; _kernel_off_t d_off; unsigned short d_reclen; unsigned char d_type; //在有些系统中是没有这个成员的,比如本人使用的centos 6 char d_name[256]; } 我不明白这个地方的d_reclen是什么东东,在网上查了一下,有人说是strlen(d_name),实际上是不对的。严格的说,这个成员是这个结构体除了d_na...
阅读全文
摘要:终于决定开c言语这一块的文章啦,昨天看了一下c的声明,发现网上虽然有很多人在说这件事情,但是都不太透彻,我自己认为我这个理解方式比较简单,而且实用,可以对付任何复杂的声明,比如:char*(*(*f(char*(*para)(char*)))[2])();是不是一看这个声明有点懵?不急,来看看我下面的解析你就觉得这个声明也很简单! 复杂声明中的类型说明符有:()、[]、*三种。其中()用于说明函数类型以及改变说明的先后顺序;[]用于说明数组类型;*则用于说明指针类型。数据类型名可以是int、char、float、double、void等基本类型名,也可以是用户自定义的构造类型。在解释复杂声明.
阅读全文