乐视1s flyme6刷机包可以用魅族的flyme系统吗

7869人阅读
基础知识(56)
unsigned long get_file_size(const char *path)
unsigned long filesize = -1;
fp = fopen(path, &r&);
if(fp == NULL)
fseek(fp, 0L, SEEK_END);
filesize = ftell(fp);
fclose(fp);
&&&&&&& 此种以打开文件的方法取得文件的大小,不适合大文件,并且可能会出现访问冲突(比如正在下载的文件),效率也比较低。
#include &sys/stat.h&
unsigned long get_file_size(const char *path)
unsigned long filesize = -1;
if(stat(path, &statbuff) & 0){
filesize = statbuff.st_
&& 此种使用读取文件属性的方法得到文件的大小,效率较高,也较稳定
stat的详细信息如下所示:
&1) stat(取得文件状态)
相关函数 & & fstat,lstat,chmod,chown,readlink,utime&
2) 表头文件&&&&
&sys/stat.h&&
#include &unistd.h&&
3) 定义函数 & & int & stat(const & char & * & file_name, struct & stat & *buf);&
4) 函数说明
stat()用来将参数file_name所指的文件状态,复制到参数buf所指的结构中。&
&&& 下面是struct & stat内各参数的说明&
struct & stat&
dev_t & st_ & /*device*/&
ino_t & st_ & /*inode*/&
mode_t & st_ & /*protection*/&
nlink_t & st_ & /*number & of & hard & links & */&
uid_t & st_ & /*user & ID & of & owner*/&
gid_t & st_ & /*group & ID & of & owner*/&
dev_t & st_ & /*device & type & */&
off_t & st_ & /*total & size, & in & bytes*/&
unsigned & long & st_ & /*blocksize & for & filesystem & I/O & */&
unsigned & long & st_ & /*number & of & blocks & allocated*/&
time_t & st_ & /* & time & of & lastaccess*/&
time_t & st_ & /* & time & of & last & modification & */&
time_t & st_ & /* & time & of & last & change & */&
st_dev & 文件的设备编号&
st_ino & 文件的i-node&
st_mode & 文件的类型和存取的权限&
st_nlink & 连到该文件的硬连接数目,刚建立的文件值为1。&
st_uid & 文件所有者的用户识别码&
st_gid & 文件所有者的组识别码&
st_rdev & 若此文件为装置设备文件,则为其设备编号&
st_size & 文件大小,以字节计算&
st_blksize & 文件系统的I/O & 缓冲区大小。&
st_blcoks & 占用文件区块的个数,每一区块大小为512 & 个字节。&
st_atime & 文件最近一次被存取或被执行的时间,一般只有在用mknod、utime、read、write与tructate时改变。&
st_mtime & 文件最后一次被修改的时间,一般只有在用mknod、utime和write时才会改变&
st_ctime & i-node最近一次被更改的时间,此参数会在文件所有者、组、权限被更改时更新先前所描述的st_mode & 则定义了下列数种情况&
S_IFMT & 0170000 & 文件类型的位遮罩&
S_IFSOCK & 0140000 & scoket&
S_IFLNK & 0120000 & 符号连接&
S_IFREG & 0100000 & 一般文件&
S_IFBLK & 0060000 & 区块装置&
S_IFDIR & 0040000 & 目录&
S_IFCHR & 0020000 & 字符装置&
S_IFIFO & 0010000 & 先进先出&
S_ISUID & 04000 & 文件的(set & user-id & on & execution)位&
S_ISGID & 02000 & 文件的(set & group-id & on & execution)位&
S_ISVTX & 01000 & 文件的sticky位&
S_IRUSR(S_IREAD) & 00400 & 文件所有者具可读取权限&
S_IWUSR(S_IWRITE)00200 & 文件所有者具可写入权限&
S_IXUSR(S_IEXEC) & 00100 & 文件所有者具可执行权限&
S_IRGRP & 00040 & 用户组具可读取权限&
S_IWGRP & 00020 & 用户组具可写入权限&
S_IXGRP & 00010 & 用户组具可执行权限&
S_IROTH & 00004 & 其他用户具可读取权限&
S_IWOTH & 00002 & 其他用户具可写入权限&
S_IXOTH & 00001 & 其他用户具可执行权限&
上述的文件类型在POSIX & 中定义了检查这些类型的宏定义&
S_ISLNK & (st_mode) & 判断是否为符号连接&
S_ISREG & (st_mode) & 是否为一般文件&
S_ISDIR & (st_mode)是否为目录&
S_ISCHR & (st_mode)是否为字符装置文件&
S_ISBLK & (s3e) & 是否为先进先出&
S_ISSOCK & (st_mode) & 是否为socket&
若一目录具有sticky & 位(S_ISVTX),则表示在此目录下的文件只能被该文件所有者、此目录所有者或root来删除或改名。&
返回值 & & 执行成功则返回0,失败返回-1,错误代码存于errno&
错误代码 & & ENOENT & 参数file_name指定的文件不存在&
ENOTDIR & 路径中的目录存在但却非真正的目录&
ELOOP & 欲打开的文件有过多符号连接问题,上限为16符号连接&
EFAULT & 参数buf为无效指针,指向无法存在的内存空间&
EACCESS & 存取文件时被拒绝&
ENOMEM & 核心内存不足&
ENAMETOOLONG & 参数file_name的路径名称太长&
#include &sys/stat.h&
#include &unistd.h&
(“/etc/passwd”,&buf);
printf(“/etc/passwd
/n”,buf.st_size);
执行结果:/etc/passwd & file & size & = & 705&
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:3030639次
积分:28274
积分:28274
排名:第165名
原创:315篇
转载:197篇
译文:11篇
评论:414条
(3)(5)(4)(12)(27)(4)(2)(7)(16)(5)(10)(14)(14)(5)(2)(2)(4)(3)(2)(5)(4)(10)(3)(4)(3)(1)(3)(6)(1)(2)(6)(5)(5)(8)(7)(7)(19)(18)(5)(14)(4)(3)(1)(12)(12)(31)(21)(12)(14)(10)(11)(7)(4)(15)(10)(8)(56)(19)2012年11月 Linux/Unix社区大版内专家分月排行榜第二2011年8月 Linux/Unix社区大版内专家分月排行榜第二2008年10月 C/C++大版内专家分月排行榜第二
2012年8月 Linux/Unix社区大版内专家分月排行榜第三
2012年11月 Linux/Unix社区大版内专家分月排行榜第二2011年8月 Linux/Unix社区大版内专家分月排行榜第二2008年10月 C/C++大版内专家分月排行榜第二
2012年8月 Linux/Unix社区大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
丰衣足食, 积分 536, 距离下一级还需 464 积分
论坛徽章:0
HI 小弟不才,来这边请教一个问题, 就是想通过命令行来调整音量的大小,看到用alsamixer这个命令,或者其他的,但是不知道怎么使用这个命令行,不知道有哪位大哥使用过命令行来调整过设备音量大小的,请指教!谢谢!
&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp
丰衣足食, 积分 536, 距离下一级还需 464 积分
论坛徽章:0
小富即安, 积分 4845, 距离下一级还需 155 积分
论坛徽章:0
没有用过。
家境小康, 积分 1180, 距离下一级还需 820 积分
论坛徽章:1
直接输入这个命令alsamixer 是图形化的
或者 amixer set Master 100% 现在声音是100
家境小康, 积分 1180, 距离下一级还需 820 积分
论坛徽章:1
快点送分 !一定是可以的
白手起家, 积分 2, 距离下一级还需 198 积分
论坛徽章:0
那在linux下怎么用C语言设置音量啊
白手起家, 积分 16, 距离下一级还需 184 积分
论坛徽章:1
&&四楼正解,如果关闭了音量 ,要加 on,想关闭加off
&&# amixer set Master&&on 91%
&&# amixer set Master 91% off
&&# alsamixer& && && && && && && && && & -----这个命令可以图形设置
& &注:在红帽企业版 Linux6.3 下验证可用
稍有积蓄, 积分 261, 距离下一级还需 239 积分
论坛徽章:6
学习了,这种命令

我要回帖

更多关于 乐视1s flyme 的文章

 

随机推荐