亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? to.c

?? 嵌入式實時操作系統(第2版)uC/OS-2中的源碼,學習嵌入式實時操作系統的絕好范例
?? C
字號:
/*$TITLE=Command to jump 'TO' a specified project*/
/*
*********************************************************************************************************
*                                               TO
*
*                              Command to jump TO a specified project
*
*
*
* Filename      : TO.C
* Programmer(s) : Jean J. Labrosse
*********************************************************************************************************
*
* This program allows the user to change directory by simply specifying a name which is associated with
* the directory's path.
*
*
* Program use:
*
*        TO name [path]
*
*        where :
*
*             name               Is the name associated with a path
*             [path]             Is an optional path used to specify the path associated with the project
*
*        Notes : TO assumes the presence of the file TO.TBL on the root directory of the current drive
*                TO.TBL is an ASCII file which has the following format:
*
*                       name, path
*                       name, path
*                        .     .
*                        .     .
*                       name, path
*
*                where, 'name' is the name associated with 'path'
*********************************************************************************************************
*/
/*$PAGE*/
/*
*********************************************************************************************************
*                                         INCLUDE FILES
*********************************************************************************************************
*/

#include <DIR.H>
#include <STDIO.H>
#include <STRING.H>
#include <CTYPE.H>
#include <CONIO.H>

/*
*********************************************************************************************************
*                                           CONSTANTS
*********************************************************************************************************
*/

#define  NUL         0x00
#define  TO_NOT_EOF     0
#define  TO_EOF        -1

#define  TRUE           1
#define  FALSE          0

/*
*********************************************************************************************************
*                                      FUNCTION PROTOTYPES
*********************************************************************************************************
*/

        void  main(int argc, char *argv[]);
static  void  ToDispUsage(void);
static  void  ToErrNoFile(void);
static  void  ToFindPath(char *project);
static  int   ToAddPath(char *project, char *path);
static  int   ToRdLine(void);

/*
*********************************************************************************************************
*                                       GLOBAL VARIABLES
*********************************************************************************************************
*/

static  char  ToName[100];
static  char  ToPath[200];
static  char  ToLine[300];
static  char  ToLineRd[300];
static  FILE *ToFilePtr;
static  FILE *ToTempFilePtr;

/*$PAGE*/
/*
*********************************************************************************************************
*                                         TO ENTRY POINT
*********************************************************************************************************
*/

void main(int argc, char *argv[])
{
    int stat;


    switch (argc) {
        case 1:  ToDispUsage();                                      /* TO                             */
                 break;

        case 2:  ToFilePtr = fopen("\\TO.TBL", "r");                 /* TO <name>                      */
                 if (ToFilePtr != NULL) {
                     ToFindPath(argv[1]);                            /* Find path assoicated with name */
                     fclose(ToFilePtr);
                 } else {
                     ToErrNoFile();                                  /* \TO.TBL does not exist         */
                 }
                 break;

        case 3:  ToFilePtr     = fopen("\\TO.TBL", "r");             /* TO <name> <path>               */
                 ToTempFilePtr = fopen("ZZZZZZZZ.ZZZ", "w");         /* Create temporary file          */
                 if (ToFilePtr != NULL && ToTempFilePtr != NULL) {
                     stat = ToAddPath(argv[1], argv[2]);             /* Add new entry in \TO.TBL       */
                     fclose(ToFilePtr);
                     fclose(ToTempFilePtr);
                     if (stat == 1) {                                /* See if unique name ...         */
                         ToFilePtr     = fopen("\\TO.TBL", "w");     /* ... ZZZZZZZZ.ZZZ -> \TO.TBL    */
                         ToTempFilePtr = fopen("ZZZZZZZZ.ZZZ", "r");
                         while (fgets(ToLine, 100, ToTempFilePtr) != NULL) {
                             fputs(ToLine, ToFilePtr);
                         }
                         fclose(ToFilePtr);
                         fclose(ToTempFilePtr);
                     }
                     remove("ZZZZZZZZ.ZZZ");                         /* Delete temporary file          */
                 } else {
                     ToErrNoFile();
                 }
                 break;

        default: ToDispUsage();                                      /* default                        */
                 break;

    }
}

/*$PAGE*/
/*
*********************************************************************************************************
*                                DISPLAY THE USAGE OF THIS PROGRAM
*********************************************************************************************************
*/

static void ToDispUsage(void)
{
    printf("TO.EXE\n\n");
    printf("Program to change directory:\n");
    printf("   This program reads a file in the ROOT directory called \"\\TO.TBL\".\n");
    printf("   This file is an ASCII file.\n");
    printf("   This file contains a table of names and their path.\n");
    printf("   This name is separated from the directory by a comma.\n\n");
    printf("Usage:  TO <name> [path]\n\n");
    printf("   To add a new name:\n");
    printf("       Type TO followed by the name and finally, its path\n");
}


/*
*********************************************************************************************************
*                         DISPLAY ERROR MESSAGE SINCE \TO.TBL NOT FOUND
*********************************************************************************************************
*/

static void ToErrNoFile(void)
{
    printf("Error:\n");
    printf("   \"\\TO.TBL\" does not exist.\n");
    printf("   \"\\TO.TBL\" is an ASCII file that contains a name and a path.\n");
    printf("   The file is organized as follows:\n");
    printf("      <name>, <path>\n");
}

/*$PAGE*/
/*
*********************************************************************************************************
*                                  FIND PATH ASSOCIATED WITH NAME
*********************************************************************************************************
*/

static void ToFindPath(char *name)
{
    int  stat;
    char *ptr;


    ptr = name;                                  /* Convert name to upper case                         */
    while (*ptr) {
        *ptr = toupper(*ptr);
        ptr++;
    }
    do {
        stat = ToRdLine();                       /* Read line from \TO.TBL and extract name & path     */
        if (strcmp(name, ToName) == 0) {         /* See if found desired name                          */
            clrscr();                            /* Clear the screen                                   */
            chdir(ToPath);                       /* Change directory to path associated with name      */
            return;
        }
    } while (stat != TO_EOF);                    /* Read all lines from \TO.TBL                        */
    printf("Invalid NAME.\n");                   /* Name not found in \TO.TBL                          */
}

/*$PAGE*/
/*
*********************************************************************************************************
*                            ADD PATH ASSOCIATED WITH NAME TO \TO.TBL
*********************************************************************************************************
*/

static int ToAddPath(char *name, char *path)
{
    char *ptr;
    char  buf[20];


    ptr = name;                                            /* Convert name name to upper case          */
    while (*ptr) {
        *ptr = toupper(*ptr);
        ptr++;
    }
    while (ToRdLine() != TO_EOF) {                         /* Read line from \TO.TBL                   */
        if (strcmp(name, ToName) == 0) {                   /* See if name already in \TO.TBL           */
            clrscr();                                      /* Clear the screen                         */
            printf("Name <%s> already exist.\n", name);    /* Indicate that already exist              */
            return (0);
        }
        fprintf(ToTempFilePtr, "%s", ToLineRd);
    }
    strcpy(buf, "            ");                           /* Place name name within 11 characters     */
    ptr = &buf[0];
    while (*name)
        *ptr++ = *name++;
    *ptr++ = ',';
    ptr    = path;                                         /* Convert path to upper case characters    */
    while (*ptr) {
        *ptr = toupper(*ptr);
        ptr++;
    }
    fprintf(ToTempFilePtr, "%s%s\n", buf, path);           /* Add new name & path at the end of TO.TBL */
    return (1);
}

/*$PAGE*/
/*
*********************************************************************************************************
*                            READ A LINE FROM \TO.TBL AND SEPARATE TOKENS
*********************************************************************************************************
*/

static int ToRdLine(void)
{
    char *ptr;
    char *source;
    char *desti;


    if (fgets(ToLine, 100, ToFilePtr) != NULL) {
        strcpy(ToLineRd, ToLine);
        ptr = strchr(ToLine, '\n');                        /* Remove the newline character             */
        if (ptr != NULL) {
            *ptr = NUL;
        }
        ptr    = strtok(ToLine, ",");                      /* Get name                                 */
        source = ptr;                                      /* Remove any spaces                        */
        desti  = &ToName[0];
        while (*source) {
            if (*source != ' ') {
                *desti++ = toupper(*source);
                source++;
            } else {
                source++;
            }
        }
        *desti = NUL;
        ptr    = strtok(NULL, ",");                        /* Get path                                 */
        source = ptr;                                      /* Remove any spaces                        */
        desti  = &ToPath[0];
        while (*source) {
            if (*source != ' ') {
                *desti++ = *source++;
            } else {
                source++;
            }
        }
        *desti = NUL;
        return (TO_NOT_EOF);
    } else {
        return (TO_EOF);
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产美女精品一区二区三区| 亚洲最色的网站| 91麻豆精品国产综合久久久久久 | 精品国产电影一区二区| 欧美精品色一区二区三区| 欧美性大战久久久| 欧美亚洲动漫制服丝袜| 在线观看不卡视频| 欧美午夜片在线看| 91福利在线播放| 色就色 综合激情| 欧美唯美清纯偷拍| 欧美一级高清大全免费观看| 欧美一区二区三区视频在线观看| 91精品国产色综合久久| 日韩免费一区二区| 久久精品人人做人人爽人人| 中文字幕欧美激情一区| 亚洲精品亚洲人成人网在线播放| 亚洲女女做受ⅹxx高潮| 亚洲国产美女搞黄色| 日本成人中文字幕| 国产精品538一区二区在线| 成人h精品动漫一区二区三区| 91在线视频18| 制服丝袜一区二区三区| 久久亚洲二区三区| 亚洲综合自拍偷拍| 精品一区二区影视| www.欧美.com| 制服丝袜亚洲播放| 国产精品每日更新| 午夜精品久久久久久久久久久 | 亚洲综合色婷婷| 偷拍亚洲欧洲综合| 国产黑丝在线一区二区三区| 99精品国产热久久91蜜凸| 91麻豆精品国产91久久久久久 | 在线视频中文字幕一区二区| 5月丁香婷婷综合| 中文字幕电影一区| 日韩制服丝袜av| av在线这里只有精品| 3atv一区二区三区| 亚洲图片欧美激情| 久久se这里有精品| 欧美日韩在线播| 国产精品免费久久久久| 玖玖九九国产精品| 91黄色免费网站| 中文字幕不卡在线观看| 免费成人你懂的| 一本色道久久综合亚洲精品按摩| 精品三级在线看| 亚洲一区二区三区爽爽爽爽爽| 国产一区二区精品久久99| 欧美人妖巨大在线| 亚洲另类在线一区| 成人涩涩免费视频| 久久久精品黄色| 老司机午夜精品99久久| 欧美精品丝袜久久久中文字幕| 中文字幕亚洲精品在线观看| 国产在线一区观看| 精品欧美乱码久久久久久| 亚洲国产日韩在线一区模特| 色婷婷综合久久久| 国产精品第四页| 国产ts人妖一区二区| 亚洲精品在线网站| 狠狠色丁香九九婷婷综合五月| 欧美丰满一区二区免费视频| 亚洲高清免费观看高清完整版在线观看| 成人涩涩免费视频| 国产精品久久看| 成人h动漫精品| 国产精品午夜久久| 高清不卡一区二区在线| 2020国产精品自拍| 国产精品亚洲一区二区三区在线 | 欧美亚洲丝袜传媒另类| 亚洲乱码日产精品bd| 91在线小视频| 亚洲一区二区三区在线| 欧美日韩一区中文字幕| 日本sm残虐另类| 欧美videos大乳护士334| 久久91精品久久久久久秒播| 日韩精品一区二区三区视频在线观看 | 国产伦精品一区二区三区免费| 日韩欧美精品三级| 国产激情视频一区二区三区欧美 | 91在线精品一区二区三区| 国产精品黄色在线观看| 一本一道综合狠狠老| 亚洲一区二区3| 日韩一卡二卡三卡四卡| 国产一区二区三区精品视频| 中文字幕欧美三区| 91国产成人在线| 久久精品国产99| 中文字幕精品—区二区四季| 色诱亚洲精品久久久久久| 亚洲成人av中文| 欧美成人精品福利| 成人激情视频网站| 日韩国产欧美在线观看| 久久久精品国产免费观看同学| zzijzzij亚洲日本少妇熟睡| 亚洲妇女屁股眼交7| 精品免费视频一区二区| 91首页免费视频| 奇米影视一区二区三区| 中文欧美字幕免费| 91精品久久久久久蜜臀| 成人一区二区三区视频| 日韩国产欧美一区二区三区| 欧美高清一级片在线观看| 欧美色爱综合网| 成人看片黄a免费看在线| 水蜜桃久久夜色精品一区的特点| 国产午夜精品一区二区| 欧美日韩国产中文| 99riav一区二区三区| 蜜桃久久av一区| 亚洲免费三区一区二区| 精品捆绑美女sm三区| 欧美三级日韩三级| 国产成人免费在线观看不卡| 午夜欧美电影在线观看| 亚洲美女少妇撒尿| 国产日韩视频一区二区三区| 555夜色666亚洲国产免| 色婷婷激情综合| 国产999精品久久久久久绿帽| 男女男精品视频网| 亚洲第一福利一区| 亚洲色图欧美在线| 中文无字幕一区二区三区| 国产精品久久久久久福利一牛影视| 日韩欧美在线网站| 欧美日韩中文一区| 欧美亚洲尤物久久| 日本久久一区二区三区| av一区二区三区黑人| 成人污视频在线观看| 成人深夜视频在线观看| 粉嫩13p一区二区三区| 国产一区二区在线看| 久久精品二区亚洲w码| 免费一级欧美片在线观看| 午夜电影一区二区| 日韩在线一二三区| 蜜桃av噜噜一区二区三区小说| 亚州成人在线电影| 日韩综合一区二区| 水野朝阳av一区二区三区| 视频一区二区三区中文字幕| 天天做天天摸天天爽国产一区| 亚洲最大成人综合| 日本中文字幕一区二区有限公司| 丝袜诱惑制服诱惑色一区在线观看 | 亚洲欧洲日产国码二区| 亚洲欧洲三级电影| 亚洲乱码国产乱码精品精98午夜 | 五月天欧美精品| 日韩综合在线视频| 看片的网站亚洲| 成人性生交大片免费看视频在线| 成人性生交大片免费| 在线欧美日韩精品| 欧美日韩精品欧美日韩精品一| 7777精品伊人久久久大香线蕉经典版下载 | 亚洲欧美日韩国产一区二区三区| 亚洲精品va在线观看| 亚洲成在人线免费| 美腿丝袜一区二区三区| 国产精一品亚洲二区在线视频| 成人久久久精品乱码一区二区三区| www.爱久久.com| 欧美另类久久久品| 久久久久国产免费免费| 依依成人精品视频| 理论电影国产精品| 色婷婷av一区二区三区大白胸| 欧美日韩一区 二区 三区 久久精品 | 国产99精品在线观看| 欧美调教femdomvk| 久久久久久免费毛片精品| 免费成人在线视频观看| 从欧美一区二区三区| 欧美日韩视频在线第一区| 国产拍欧美日韩视频二区| 亚洲午夜在线视频| 国产99一区视频免费| 欧美喷水一区二区| 亚洲欧洲成人精品av97| 精油按摩中文字幕久久| 精品视频一区二区不卡| 中文一区一区三区高中清不卡|