首页 > 编程知识 正文

printf(str)错误,c语言runtimeerror怎么解决

时间:2023-05-06 09:10:02 阅读:12801 作者:1002

相关函数: fstat、lstat、chmod、chown、readlink、utime

头文件: #include #include

定义函数: intstat(constchar*file_name,struct stat *buf );

函数说明: stat (用于将参数file_name指向的文件状态复制到参数buf指向的结构中。

struct stat内的各参数的说明如下所示。

1结构stat {2dev _ t ST _ dev;//设备文件的设备编号

3 ino_t st_ino; //inode文件的i-node

4 mode_t st_mode; //protection文档类型和权限

5 nlink_t st_nlink; //number of hard links连接到此文件的硬连接数。 刚创建的文件的值为1。

6 uid_t st_uid; //user ID of owner文件所有者的用户标识符

7 gid_t st_gid; //group ID of owner文档所有者的组标识符

8 dev_t st_rdev; //device type如果此文件是装置设备文件,则为其设备编号

9 off_t st_size; //total size,in bytes文件大小,按字节

10 unsigned long st_blksize; //blocksize for filesystem I/O文件系统的I/O缓冲区大小。

11u无信号长ST _ blocks; //number of blocks allocated占用文件块的数量,每个块的大小为512字节。

12 time_t st_atime; 上次访问或执行//time of lastaccess文件的时间通常仅在使用mknod、utime、read、write和tructate时发生变化。

13 time_t st_mtime; 上次修改//time of last modification文件的时间通常仅在使用mknod、utime和write时更改

14 time_t st_ctime; //time of last change i-node上次修改的时间。 当文件的所有者、组和权限发生更改时,将更新此参数

15 };

上述st_mode定义了以下几种情况:

1、S_IFMT 0170000文件类型的位掩码2 2、S_IFSOCK 0140000scoket3 3、S_IFLNK 0120000符号连接4、S_IFREG 0100000普通文件5、 S_IFBLK 0060000块S_IFCHR 0020000角色设备8、S_IFIFO 0010000先进先出9、S_ISUID 04000文件的(设置用户- id on execution S_ISGID 02000文件的) set S_ISVTX 01000文件的sticky位12 12,s_IRusr(s_iread ) 00400文件所有者具有可读权限13 13,s_iwusr ) s_iii S_IRGRP 00040用户组具有可读取权限16 16,S_IWGRP 00020用户组具有可写入权限17 17,S_IXGRP 00010用户组具有可执行权限18 18,s _ I S_IWOTH 00002其他用户S_IXOTH 00001其他用户具有可执行权限的上述文件类型,POSIX中检查这些类型的宏定义21 21、s_islnk(ST_mode )为s_isreg ) ST_mode )是否为一般文件23 23、定义是否为s_mode的目录24 24、是否为s_ischr(ST_mode )、字符设备文件25 25

返回值:执行成功时返回0,失败时返回-1,错误代码保存在errno中。

错误代码:

1、ENOENT参数file_name指定的文件不存在2、存在位于ENOTDIR路径中的目录,但不是真实目录3、ELOOP尝试打开的文件存在太多的符号连接问题。 上限为16符号连接4,EFAULT参数buf为无效指针,无法存在的内存空间5,EACCESS的文件访问被拒绝6,enooss

示例:

1 #包含

2 #包含

3 main ()。

4结构启动缓冲区;

5stat(/etc/passwd )、buf );

6 printf (/etc/passwd filesize=% dn ),buf.st_size );

7 }

执行:/etc/passwd文件大小=705

转载: http://wenku.baidu.com/link? URL=furowfwmmxc3tezpymtixf 3g ou-fsye _ nier 218 D7 xzoa5vgilbssvfvjrftphpkm _ tqtovjort2aqeabmgkhg-lhobbbbjiqjkao3ohkydqq

资料来源: https://www.cn blogs.com/jike Xianfeng/p/5742887.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。