dirent2.h
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:1k
源码类别:

通讯编程

开发平台:

Visual C++

  1. /*
  2.  * dirent.h --
  3.  *
  4.  * Declarations of a library of directory-reading procedures
  5.  * in the POSIX style ("struct dirent").
  6.  *
  7.  * Copyright (c) 1991 The Regents of the University of California.
  8.  * Copyright (c) 1994 Sun Microsystems, Inc.
  9.  *
  10.  * See the file "license.terms" for information on usage and redistribution
  11.  * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  12.  *
  13.  * RCS: @(#) $Id: dirent2.h,v 1.2 1998/09/14 18:39:44 stanton Exp $
  14.  */
  15. #ifndef _DIRENT
  16. #define _DIRENT
  17. #ifndef _TCL
  18. #include <tcl.h>
  19. #endif
  20. /*
  21.  * Dirent structure, which holds information about a single
  22.  * directory entry.
  23.  */
  24. #define MAXNAMLEN 255
  25. #define DIRBLKSIZ 512
  26. struct dirent {
  27.     long d_ino; /* Inode number of entry */
  28.     short d_reclen; /* Length of this record */
  29.     short d_namlen; /* Length of string in d_name */
  30.     char d_name[MAXNAMLEN + 1]; /* Name must be no longer than this */
  31. };
  32. /*
  33.  * State that keeps track of the reading of a directory (clients
  34.  * should never look inside this structure;  the fields should
  35.  * only be accessed by the library procedures).
  36.  */
  37. typedef struct _dirdesc {
  38.     int dd_fd;
  39.     long dd_loc;
  40.     long dd_size;
  41.     char dd_buf[DIRBLKSIZ];
  42. } DIR;
  43. /*
  44.  * Procedures defined for reading directories:
  45.  */
  46. extern void closedir _ANSI_ARGS_((DIR *dirp));
  47. extern DIR * opendir _ANSI_ARGS_((char *name));
  48. extern struct dirent * readdir _ANSI_ARGS_((DIR *dirp));
  49. #endif /* _DIRENT */