系统功能调用函数举例

来源:互联网 发布:航母知乎 编辑:程序博客网 时间:2024/06/08 12:21

#include <stdlib.h>
#include <stdio.h>
#include <dir.h>
int main(void)
{
    char *s;
    char drive[MAXDRIVE];
    char dir[MAXDIR];
    char file[MAXFILE];
    char ext[MAXEXT];
    int flags;
    s=getenv("COMSPEC"); /* get the comspec environment parameter */
    flags=fnsplit(s,drive,dir,file,ext);
    printf("Command processor info:/n");
    if(flags & DRIVE)
       printf("/tdrive: %s/n",drive);
    if(flags & DIRECTORY)
       printf("/tdirectory: %s/n",dir);
    if(flags & FILENAME)
       printf("/tfile: %s/n",file);
    if(flags & EXTENSION)
       printf("/textension: %s/n",ext);
    return 0;

env变量获取

http://man.chinaunix.net/develop/c&c++/linux_c/function/15.html

   TC: void fnsplit( const char *path, char *drive, char *dir,
    char *name, char *ext)


- prototype in dir.h

- splits a file name from path into drive, dir, name, and ext
- dir can include subdirectories
- maximum sizes for these strings are:

  MAXPATH  80path
  MAXDRIVE  3drive - includes colon (:)
  MAXDIR   66dir - includes leading/traing backslashes
  MAXFILE   9name
  MAXEXT    5ext, including leading dot (.)

   TC: void fnmerge( char *path, const char *drive,
   const char *dir, const char *name, const char *ext)


- prototype in dir.h

- makes a file name (path) from drive, dir, name, and ext
- dir can include subdirectories
- maximum sizes for these strings are:

  MAXPATH  80path
  MAXDRIVE  3drive - includes colon (:)
  MAXDIR   66dir - includes leading/trailing backslashes
  MAXFILE   9name
  MAXEXT    5ext, including leading dot (.)

原创粉丝点击