zoukankan      html  css  js  c++  java
  • C bsearch <stdlib.h> (备忘)

    bsearch

    void *bsearch(const void *key, const void *base, size_t n_elements,

    size_t el_size, int (*compare)(const void *, const void *)); 

    Example:


    /*
     * bsearch.c
     *
     * 使用 bsearch 在一个元素类型为结构的数组中查找。
     
    */

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

    typedef 
    struct
    {
        
    char    key[10];
        
    int     other_data;
    } Record;

    int r_compare(const void *a, const void * b)
    {
        
    return strcmp( ((Record *)a)->key, ((Record *)b)->key );
    }

    int main(int argc, char *argv[])
    {
        Record    array[
    50];
        Record    key;
        Record    
    *ans;

        
    /* ...
         * 用50个元素填充数组并进行排序的代码
         
    */
        
        strcpy(key.key, 
    "value");

        ans 
    = bsearch(&key, array, 50sizeof(Record), r_compare);

        
    /*
         * ans 现在指向关键字字段与值匹配的数据元素,如果无匹配,ans 为 NULL
         
    */
        
        
    return 0;
    }

     https://files.cnblogs.com/bruceleeliya/bsearch.rar

  • 相关阅读:
    冒泡排序-用函数写
    c#语言基础
    c#小知识点
    令人头疼的冒泡排序
    字符串 与函数
    数组 冒泡排序 打印菱形 随机生成不同的数
    if语句练习
    运算符练习
    类型转换
    C#初学
  • 原文地址:https://www.cnblogs.com/bruceleeliya/p/1911048.html
Copyright © 2011-2022 走看看