• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            The Fourth Dimension Space

            枯葉北風寒,忽然年以殘,念往昔,語默心酸。二十光陰無一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢令

            C++ 中庫函數bsearch的簡單研究(含示例)

            /*bsearch函數聲明如下:

            void *bsearch(const void *key, const void *base, size_t *nelem, 
                          size_t width, int(*fcmp)(const void *, const *)); 

            參數的意思和qsort的差不多,區別在于:
            1. qsort用來排序,bsearch用二分法來查找元素
            2. bsearch中的base必須是升序排列的數組!!!
            3. 如果數組里有重復的答案,則bsearch會返回其中一個的地址 (具體返回哪一個不確定)
            4. bsearch有五個自變量,第一個是要找的東西,剩下的跟qsort一模一樣
            5. bsearch如果沒找到所求則回傳NULL ,否則回傳該元素被找到的地址(void *) 
            */




            #include
            <iostream>
            #include
            <cstdlib>
            using namespace std;


            int compare(const void*a,const void *b)
            {
                
            return *((int*)a)-*((int*)b);
            }



            int main()

            {
                
            int a[100];
                
            int i;
                
            for(i=0;i<100;i++)
                    a[i]
            =i+1;
                i
            =50;
                
            int *result;
                result
            =(int*)bsearch((void*)&i,(void*)a,100,sizeof(a[0]),compare);
                cout
            <<i<<' '<<*result<<endl;
                system(
            "pause");
                
            return 0;
            }



            值得特別注意的是:函數的第一個元素是一個地址變量,而不是一個int型或者是float型的變量。

            posted on 2009-03-24 11:27 abilitytao 閱讀(894) 評論(1)  編輯 收藏 引用

            評論

            # re: C++ 中庫函數bsearch的簡單研究(含示例) 2009-11-13 00:45 OwnWaterloo

            nelem是size_t類型,不是size_t*
            不一定是升序,也可以是降序,跟fcmp參數有關。
            (void*)&i,(void*)&a是不必要的,(const)T*到const void*的轉換可以是隱式的。

              回復  更多評論   

            久久99久久99精品免视看动漫| 99久久精品国内| 亚洲欧洲中文日韩久久AV乱码| 天天影视色香欲综合久久| 亚洲精品tv久久久久| 国产精品免费福利久久| 91精品久久久久久无码| 精品一二三区久久aaa片| 人人狠狠综合久久亚洲88| 久久99九九国产免费看小说| 久久99国产综合精品免费| 国产日韩久久久精品影院首页| 久久久久久伊人高潮影院| 91麻豆精品国产91久久久久久| 日韩人妻无码精品久久久不卡| 99久久精品国产一区二区| 久久综合给合久久国产免费| 久久中文字幕视频、最近更新| 久久99国产精品一区二区| 久久香综合精品久久伊人| 日韩精品久久久久久久电影| 情人伊人久久综合亚洲| 99精品久久精品一区二区| 伊人久久大香线蕉av不卡| 亚洲另类欧美综合久久图片区| 色偷偷888欧美精品久久久| 77777亚洲午夜久久多喷| 日韩精品久久无码人妻中文字幕 | 久久人人爽人人爽人人片AV高清| 久久久久久九九99精品| 亚洲午夜无码久久久久| 狠狠色丁香久久婷婷综合蜜芽五月| 精品久久人人妻人人做精品| 欧美亚洲另类久久综合| 久久99热狠狠色精品一区| 久久精品国产亚洲av水果派| 色综合久久综合中文综合网| 欧美va久久久噜噜噜久久| 亚洲精品美女久久久久99| 久久精品久久久久观看99水蜜桃| 国产成人久久精品一区二区三区|