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

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

?? arsetprn.c

?? roots--一個輕量級的內存數據庫系統。基于Hash Map的table設計。快速輕巧。
?? C
字號:
/*
Copyright (c) 2003, Dan Kranz and Arnold Rom
All rights reserved.

Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the following
conditions are met:

    * Redistributions of source code must retain the above
      copyright notice, this list of conditions and the following
      disclaimer.

    * Redistributions in binary form must reproduce the above
      copyright notice, this list of conditions and the following
      disclaimer in the documentation and/or other materials
      provided with the distribution.

    * The names of its contributors may not be used to endorse or
      promote products derived from this software without specific
      prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <roots.h>

/* ############################################################################# */
/* #                     SETPRN(STRING,FIRST,LNEXTL,MATCH)                     # */
/* #                                                                           # */
/* #  Purpose                                                                  # */
/* #  -------                                                                  # */
/* #  Use  SETPRN  to  split  an  input  sub-list into two mutually exclusive  # */
/* #  output   sublists.    In   particular,  SETPRN  scans  each  member  of  # */
/* #  FIRST,LNEXTL;  each  member has an inherent LINE number which may range  # */
/* #  from 1 to NLINE.  SETPRN uses the LINE numbers to address bit positions  # */
/* #  in STRING.                                                               # */
/* #                                                                           # */
/* #  Members  whose  STRING(LINE) contain a "1" are moved to output sub-list  # */
/* #  MATCH,LNEXTL.  Members  whose  STRING(LINE)  contain  a  "0"  remain in  # */
/* #  FIRST,LNEXTL.                                                            # */
/* #                                                                           # */
/* #  Note: SETPRN is used typically in conjunction with SETBIT.               # */
/* #                                                                           # */
/* #  The calling arguments to the current routine are as follows:             # */
/* #  -----------------------------------------------------------              # */
/* #  STRING - is a LOGICAL*1 array containing a bit vector.                   # */
/* #                                                                           # */
/* #  FIRST  - contains the first member of the input sub-list.                # */
/* #                                                                           # */
/* #  LNEXTL - is a half-word array containing the input linked list.          # */
/* #                                                                           # */
/* #  MATCH  - contains the first member of the matching output sub-list.      # */
/* #                                                                           # */
/* #           Output  MATCH,LNEXTL  will  contain members whose STRING(LINE)  # */
/* #           contain a "1"                                                   # */
/* #                                                                           # */
/* #           Output FIRST,LNEXTL will contain the leftovers.                 # */
/* #                                                                           # */
/* #  Note: the input sort sequence is preserved in both output sublists.      # */
/* ############################################################################# */

/* small internal routines */

static void sos(void) {RootsSOS("setprn sos exit\n"); abort();}

void setprn(
                      BYTE *string,
                      long *first,
                      unsigned short *lnextl,
                      long *match
                      )

/* --------------------------------------------------------- */
{       /* setprn START */
/* --------------------------------------------------------- */

/*      local data */

        long guard=MAXLIN,LastMatch;

        long CurrentInputLine,PreviousInputLine,NextInputLine;
        BYTE tbits[8]= {0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};

/* -------------------------------- */
/*      setup */
/* -------------------------------- */

        PreviousInputLine=LastMatch=*match=0;

        if((CurrentInputLine=*first)==0)return;
        if(CurrentInputLine<0)sos();

        --lnextl;

/* ------------------------------------ */
/*      process all members of lnextl */
/* ------------------------------------ */

        while(CurrentInputLine>0)
        {
        if(!guard--)sos();

/*      ----------------------------------------------------------------- */
/*      advance to next input member if CurrentInputLine's bit is off */
/*      ----------------------------------------------------------------- */

        if(!( *(string+( (CurrentInputLine-1) >>3) )
               &
               tbits[ (CurrentInputLine-1) & 0x7]
            )
          )
                                 {
                                 PreviousInputLine=CurrentInputLine;
                                 CurrentInputLine=*(lnextl+CurrentInputLine);
                                 continue;
                                 }

/*      ----------------------------------------------------------------- */
/*      bit(CurrentInputLine)==1) */
/*      ----------------------------------------------------------------- */

        RemoveFromInputList(first,lnextl,CurrentInputLine,PreviousInputLine,
                                                              NextInputLine)

        InsertIntoOutputList(match,lnextl,CurrentInputLine,LastMatch)

/*      step */

        CurrentInputLine=NextInputLine;
        }

        return;
/* --------------------------------------------------------- */
}       /* setprn END */
/* --------------------------------------------------------- */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美视频在线一区| 精久久久久久久久久久| 久久精品人人做人人爽人人| 在线播放国产精品二区一二区四区 | 97久久超碰国产精品| 国产成人在线视频网站| 国产精品亚洲一区二区三区在线| 欧美性猛交xxxx黑人交| 91成人免费在线| 精品视频资源站| 欧美人伦禁忌dvd放荡欲情| 337p亚洲精品色噜噜噜| 精品久久久久一区二区国产| 久久午夜国产精品| 欧美国产成人精品| 亚洲国产一区二区视频| 亚洲与欧洲av电影| 亚洲福利一区二区| 精品在线播放免费| 9i看片成人免费高清| 色婷婷av一区二区三区gif| 欧美麻豆精品久久久久久| 精品人伦一区二区色婷婷| 国产片一区二区三区| 亚洲免费视频中文字幕| 五月婷婷综合在线| 丰满亚洲少妇av| 欧美视频一区二区三区在线观看| 日韩国产欧美三级| 国产精品1024| 精品视频一区二区三区免费| 26uuu成人网一区二区三区| 国产精品高潮呻吟久久| 亚洲成年人影院| 久久激情五月婷婷| 91一区二区在线观看| 欧美成人三级在线| 亚洲伦理在线精品| 国产馆精品极品| 91精品国产综合久久香蕉麻豆| av高清不卡在线| 91精品国产综合久久久久久久久久 | 亚瑟在线精品视频| 国内精品久久久久影院色| 91在线观看一区二区| 欧美高清hd18日本| 国产日韩欧美高清| 免费成人在线观看| 91黄视频在线观看| 国产精品麻豆一区二区| 精彩视频一区二区三区| 欧美日韩亚州综合| 亚洲色图在线视频| 高清不卡在线观看av| 日韩一本二本av| 亚洲一区二区在线观看视频| 成人精品国产一区二区4080| 在线电影院国产精品| 亚洲一区二区三区四区五区黄 | 日韩视频一区二区三区在线播放| 91在线看国产| 久久免费美女视频| 韩国一区二区三区| 欧美一级一区二区| 亚洲成人动漫在线免费观看| 一本大道久久a久久综合| 久久精品视频在线看| 国产综合色视频| 欧美一级午夜免费电影| 天堂成人国产精品一区| 色综合天天在线| 国产精品美女久久久久aⅴ | 色偷偷一区二区三区| 欧美—级在线免费片| 国产精品1区2区| 久久久亚洲精华液精华液精华液| 久久噜噜亚洲综合| 国产精品一区二区在线播放| 欧美一区二区三区四区视频| 免费观看成人av| www一区二区| 波多野结衣一区二区三区| 国产精品动漫网站| 色狠狠综合天天综合综合| 亚洲一区二区视频| 日韩一区二区电影网| 精品亚洲成a人| 国产日韩欧美精品一区| 99视频国产精品| 亚洲成人激情自拍| 精品国产乱码久久久久久牛牛 | 蜜臀99久久精品久久久久久软件| 国产最新精品精品你懂的| 国产网站一区二区三区| eeuss鲁片一区二区三区在线观看| 色婷婷激情综合| 亚洲成人你懂的| 日韩欧美在线1卡| 高清国产一区二区三区| 亚洲成人免费在线| 久久嫩草精品久久久精品| 狠狠色伊人亚洲综合成人| 欧美国产禁国产网站cc| 在线观看日韩电影| 国产综合色精品一区二区三区| 欧美日韩在线精品一区二区三区激情| 日韩精品一区二区三区在线播放| 亚洲欧洲av一区二区三区久久| 日韩av电影天堂| 国产精品毛片久久久久久久| 欧美日韩电影一区| 大白屁股一区二区视频| 午夜欧美2019年伦理| 久久久久国产免费免费| 欧美日韩一级黄| av一区二区三区| 久久国产夜色精品鲁鲁99| 亚洲色欲色欲www| 日韩免费性生活视频播放| 99vv1com这只有精品| 国内精品视频一区二区三区八戒| 日韩午夜精品视频| av高清久久久| 国产高清精品久久久久| 日韩电影免费在线看| 亚洲美女视频一区| 久久综合久久综合久久综合| 色偷偷88欧美精品久久久| 国产在线视视频有精品| 亚洲v中文字幕| 亚洲免费观看高清在线观看| 久久久亚洲精华液精华液精华液| 国产精品99久久久久| 青青草原综合久久大伊人精品 | 亚洲欧美日韩一区| 久久久亚洲精品石原莉奈| 日本韩国欧美国产| 不卡的av电影| 国产精品18久久久久久久久久久久 | 国产成人日日夜夜| 亚洲国产另类av| 亚洲欧美电影一区二区| 国产精品色眯眯| 欧美国产精品久久| 日本一二三不卡| 久久久噜噜噜久久中文字幕色伊伊| 美脚の诱脚舐め脚责91| 亚洲综合色自拍一区| 亚洲视频免费看| 国产精品免费免费| 中日韩免费视频中文字幕| 国产精品免费看片| 中文字幕在线不卡视频| 自拍av一区二区三区| 日本一区二区三区国色天香| 国产日韩一级二级三级| 亚洲国产精品精华液2区45| 国产午夜精品一区二区 | 天天色图综合网| 午夜影视日本亚洲欧洲精品| 亚洲最大色网站| 亚洲一区二区三区精品在线| 亚洲国产精品视频| 亚洲国产成人av好男人在线观看| 欧美一区二区三区白人| 日韩你懂的在线播放| 精品国产一区二区三区忘忧草| 国产99久久久国产精品潘金 | 日韩一级黄色片| www激情久久| 久久久久久黄色| 中文字幕色av一区二区三区| 一区二区三区精密机械公司| 亚洲成人久久影院| 精久久久久久久久久久| av欧美精品.com| 欧美日韩国产美| 国产亚洲人成网站| 亚洲自拍偷拍综合| 久久99国产精品免费| 国产成人福利片| 色天天综合久久久久综合片| 欧美日韩国产精品自在自线| 久久久久久一级片| 婷婷久久综合九色国产成人| 国产一区二区美女诱惑| 色综合天天综合给合国产| 精品区一区二区| 亚洲精品中文在线影院| 激情久久五月天| 欧美午夜精品久久久久久超碰| 丰满白嫩尤物一区二区| 色婷婷亚洲精品| 久久久久久99久久久精品网站| 欧美色欧美亚洲另类二区| 欧美本精品男人aⅴ天堂| 亚洲欧美另类小说视频| 久久99精品视频| 欧美日韩中文字幕一区二区| 欧美成人激情免费网|