Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

před 3 roky
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ -->
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  6. <title>bsearch (The Red Hat newlib C Library)</title>
  7. <meta name="description" content="bsearch (The Red Hat newlib C Library)">
  8. <meta name="keywords" content="bsearch (The Red Hat newlib C Library)">
  9. <meta name="resource-type" content="document">
  10. <meta name="distribution" content="global">
  11. <meta name="Generator" content="makeinfo">
  12. <link href="index.html#Top" rel="start" title="Top">
  13. <link href="Document-Index.html#Document-Index" rel="index" title="Document Index">
  14. <link href="Document-Index.html#SEC_Contents" rel="contents" title="Table of Contents">
  15. <link href="Stdlib.html#Stdlib" rel="up" title="Stdlib">
  16. <link href="calloc.html#calloc" rel="next" title="calloc">
  17. <link href="atoll.html#atoll" rel="prev" title="atoll">
  18. <style type="text/css">
  19. <!--
  20. a.summary-letter {text-decoration: none}
  21. blockquote.indentedblock {margin-right: 0em}
  22. blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
  23. blockquote.smallquotation {font-size: smaller}
  24. div.display {margin-left: 3.2em}
  25. div.example {margin-left: 3.2em}
  26. div.lisp {margin-left: 3.2em}
  27. div.smalldisplay {margin-left: 3.2em}
  28. div.smallexample {margin-left: 3.2em}
  29. div.smalllisp {margin-left: 3.2em}
  30. kbd {font-style: oblique}
  31. pre.display {font-family: inherit}
  32. pre.format {font-family: inherit}
  33. pre.menu-comment {font-family: serif}
  34. pre.menu-preformatted {font-family: serif}
  35. pre.smalldisplay {font-family: inherit; font-size: smaller}
  36. pre.smallexample {font-size: smaller}
  37. pre.smallformat {font-family: inherit; font-size: smaller}
  38. pre.smalllisp {font-size: smaller}
  39. span.nolinebreak {white-space: nowrap}
  40. span.roman {font-family: initial; font-weight: normal}
  41. span.sansserif {font-family: sans-serif; font-weight: normal}
  42. ul.no-bullet {list-style: none}
  43. -->
  44. </style>
  45. </head>
  46. <body lang="en">
  47. <a name="bsearch"></a>
  48. <div class="header">
  49. <p>
  50. Next: <a href="calloc.html#calloc" accesskey="n" rel="next">calloc</a>, Previous: <a href="atoll.html#atoll" accesskey="p" rel="prev">atoll</a>, Up: <a href="Stdlib.html#Stdlib" accesskey="u" rel="up">Stdlib</a> &nbsp; [<a href="Document-Index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Document-Index.html#Document-Index" title="Index" rel="index">Index</a>]</p>
  51. </div>
  52. <hr>
  53. <a name="bsearch_002d_002d_002dbinary-search"></a>
  54. <h3 class="section">2.10 <code>bsearch</code>&mdash;binary search</h3>
  55. <a name="index-bsearch"></a>
  56. <p><strong>Synopsis</strong>
  57. </p><div class="example">
  58. <pre class="example">#include &lt;stdlib.h&gt;
  59. void *bsearch(const void *<var>key</var>, const void *<var>base</var>,
  60. size_t <var>nmemb</var>, size_t <var>size</var>,
  61. int (*<var>compar</var>)(const void *, const void *));
  62. </pre></div>
  63. <p><strong>Description</strong><br>
  64. <code>bsearch</code> searches an array beginning at <var>base</var> for any element
  65. that matches <var>key</var>, using binary search. <var>nmemb</var> is the element
  66. count of the array; <var>size</var> is the size of each element.
  67. </p>
  68. <p>The array must be sorted in ascending order with respect to the
  69. comparison function <var>compar</var> (which you supply as the last argument of
  70. <code>bsearch</code>).
  71. </p>
  72. <p>You must define the comparison function <code>(*<var>compar</var>)</code> to have two
  73. arguments; its result must be negative if the first argument is
  74. less than the second, zero if the two arguments match, and
  75. positive if the first argument is greater than the second (where
  76. &ldquo;less than&rdquo; and &ldquo;greater than&rdquo; refer to whatever arbitrary
  77. ordering is appropriate).
  78. </p>
  79. <br>
  80. <p><strong>Returns</strong><br>
  81. Returns a pointer to an element of <var>array</var> that matches <var>key</var>. If
  82. more than one matching element is available, the result may point to
  83. any of them.
  84. </p>
  85. <br>
  86. <p><strong>Portability</strong><br>
  87. <code>bsearch</code> is ANSI.
  88. </p>
  89. <p>No supporting OS subroutines are required.
  90. </p>
  91. <br>
  92. </body>
  93. </html>