diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
commit | fc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch) | |
tree | ce1e3bce06471410239a6f41282e328770aa404a /templates/man3/tsearch.3.pot | |
parent | Initial commit. (diff) | |
download | manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip |
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'templates/man3/tsearch.3.pot')
-rw-r--r-- | templates/man3/tsearch.3.pot | 784 |
1 files changed, 784 insertions, 0 deletions
diff --git a/templates/man3/tsearch.3.pot b/templates/man3/tsearch.3.pot new file mode 100644 index 00000000..0f685fd3 --- /dev/null +++ b/templates/man3/tsearch.3.pot @@ -0,0 +1,784 @@ +# SOME DESCRIPTIVE TITLE +# Copyright (C) YEAR Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2024-03-01 17:12+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. type: TH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "tsearch" +msgstr "" + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "2023-10-31" +msgstr "" + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "Linux man-pages 6.06" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NAME" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"tsearch, tfind, tdelete, twalk, twalk_r, tdestroy - manage a binary search " +"tree" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "LIBRARY" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Standard C library (I<libc>, I<-lc>)" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SYNOPSIS" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<#include E<lt>search.hE<gt>>\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<typedef enum { preorder, postorder, endorder, leaf } VISIT;>\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<void *tsearch(const void *>I<key>B<, void **>I<rootp>B<,>\n" +"B< int (*>I<compar>B<)(const void *, const void *));>\n" +"B<void *tfind(const void *>I<key>B<, void *const *>I<rootp>B<,>\n" +"B< int (*>I<compar>B<)(const void *, const void *));>\n" +"B<void *tdelete(const void *restrict >I<key>B<, void **restrict >I<rootp>B<,>\n" +"B< int (*>I<compar>B<)(const void *, const void *));>\n" +"B<void twalk(const void *>I<root>B<,>\n" +"B< void (*>I<action>B<)(const void *>I<nodep>B<, VISIT >I<which>B<,>\n" +"B< int >I<depth>B<));>\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" +"B<#include E<lt>search.hE<gt>>\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<void twalk_r(const void *>I<root>B<,>\n" +"B< void (*>I<action>B<)(const void *>I<nodep>B<, VISIT >I<which>B<,>\n" +"B< void *>I<closure>B<),>\n" +"B< void *>I<closure>B<);>\n" +"B<void tdestroy(void *>I<root>B<, void (*>I<free_node>B<)(void *>I<nodep>B<));>\n" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "DESCRIPTION" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<tsearch>(), B<tfind>(), B<twalk>(), and B<tdelete>() manage a binary " +"search tree. They are generalized from Knuth (6.2.2) Algorithm T. The " +"first field in each node of the tree is a pointer to the corresponding data " +"item. (The calling program must store the actual data.) I<compar> points " +"to a comparison routine, which takes pointers to two items. It should " +"return an integer which is negative, zero, or positive, depending on whether " +"the first item is less than, equal to, or greater than the second." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<tsearch>() searches the tree for an item. I<key> points to the item to " +"be searched for. I<rootp> points to a variable which points to the root of " +"the tree. If the tree is empty, then the variable that I<rootp> points to " +"should be set to NULL. If the item is found in the tree, then B<tsearch>() " +"returns a pointer to the corresponding tree node. (In other words, " +"B<tsearch>() returns a pointer to a pointer to the data item.) If the item " +"is not found, then B<tsearch>() adds it, and returns a pointer to the " +"corresponding tree node." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<tfind>() is like B<tsearch>(), except that if the item is not found, then " +"B<tfind>() returns NULL." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<tdelete>() deletes an item from the tree. Its arguments are the same as " +"for B<tsearch>()." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<twalk>() performs depth-first, left-to-right traversal of a binary tree. " +"I<root> points to the starting node for the traversal. If that node is not " +"the root, then only part of the tree will be visited. B<twalk>() calls the " +"user function I<action> each time a node is visited (that is, three times " +"for an internal node, and once for a leaf). I<action>, in turn, takes three " +"arguments. The first argument is a pointer to the node being visited. The " +"structure of the node is unspecified, but it is possible to cast the pointer " +"to a pointer-to-pointer-to-element in order to access the element stored " +"within the node. The application must not modify the structure pointed to " +"by this argument. The second argument is an integer which takes one of the " +"values B<preorder>, B<postorder>, or B<endorder> depending on whether this " +"is the first, second, or third visit to the internal node, or the value " +"B<leaf> if this is the single visit to a leaf node. (These symbols are " +"defined in I<E<lt>search.hE<gt>>.) The third argument is the depth of the " +"node; the root node has depth zero." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"(More commonly, B<preorder>, B<postorder>, and B<endorder> are known as " +"B<preorder>, B<inorder>, and B<postorder>: before visiting the children, " +"after the first and before the second, and after visiting the children. " +"Thus, the choice of name B<post\\%order> is rather confusing.)" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<twalk_r>() is similar to B<twalk>(), but instead of the I<depth> " +"argument, the I<closure> argument pointer is passed to each invocation of " +"the action callback, unchanged. This pointer can be used to pass " +"information to and from the callback function in a thread-safe fashion, " +"without resorting to global variables." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<tdestroy>() removes the whole tree pointed to by I<root>, freeing all " +"resources allocated by the B<tsearch>() function. For the data in each " +"tree node the function I<free_node> is called. The pointer to the data is " +"passed as the argument to the function. If no such work is necessary, " +"I<free_node> must point to a function doing nothing." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "RETURN VALUE" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<tsearch>() returns a pointer to a matching node in the tree, or to the " +"newly added node, or NULL if there was insufficient memory to add the item. " +"B<tfind>() returns a pointer to the node, or NULL if no match is found. If " +"there are multiple items that match the key, the item whose node is returned " +"is unspecified." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<tdelete>() returns a pointer to the parent of the node deleted, or NULL " +"if the item was not found. If the deleted node was the root node, " +"B<tdelete>() returns a dangling pointer that must not be accessed." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<tsearch>(), B<tfind>(), and B<tdelete>() also return NULL if I<rootp> was " +"NULL on entry." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "ATTRIBUTES" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"For an explanation of the terms used in this section, see B<attributes>(7)." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Interface" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Attribute" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Value" +msgstr "" + +#. type: tbl table +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, no-wrap +msgid ".na\n" +msgstr "" + +#. type: tbl table +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, no-wrap +msgid ".nh\n" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<tsearch>(),\n" +"B<tfind>(),\n" +"B<tdelete>()" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Thread safety" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "MT-Safe race:rootp" +msgstr "" + +#. #-#-#-#-# archlinux: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TQ +#. #-#-#-#-# debian-bookworm: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: tbl table +#. #-#-#-#-# debian-unstable: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TQ +#. #-#-#-#-# fedora-40: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TQ +#. #-#-#-#-# fedora-rawhide: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TQ +#. #-#-#-#-# mageia-cauldron: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TQ +#. #-#-#-#-# opensuse-leap-15-6: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TQ +#. #-#-#-#-# opensuse-tumbleweed: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TQ +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<twalk>()" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "MT-Safe race:root" +msgstr "" + +#. #-#-#-#-# archlinux: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# debian-bookworm: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: tbl table +#. #-#-#-#-# debian-unstable: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# fedora-40: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# fedora-rawhide: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# mageia-cauldron: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# opensuse-leap-15-6: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# opensuse-tumbleweed: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<twalk_r>()" +msgstr "" + +#. #-#-#-#-# archlinux: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# debian-bookworm: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: tbl table +#. #-#-#-#-# debian-unstable: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# fedora-40: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# fedora-rawhide: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# mageia-cauldron: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# opensuse-leap-15-6: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#. #-#-#-#-# opensuse-tumbleweed: tsearch.3.pot (PACKAGE VERSION) #-#-#-#-# +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<tdestroy>()" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "MT-Safe" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "STANDARDS" +msgstr "" + +#. type: TP +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<tsearch>()" +msgstr "" + +#. type: TQ +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<tfind>()" +msgstr "" + +#. type: TQ +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<tdelete>()" +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "POSIX.1-2008." +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "GNU." +msgstr "" + +#. type: SH +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "HISTORY" +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "POSIX.1-2001, POSIX.1-2008, SVr4." +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "glibc 2.30." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NOTES" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<twalk>() takes a pointer to the root, while the other functions take a " +"pointer to a variable which points to the root." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<tdelete>() frees the memory required for the node in the tree. The user " +"is responsible for freeing the memory for the corresponding data." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The example program depends on the fact that B<twalk>() makes no further " +"reference to a node after calling the user function with argument " +"\"endorder\" or \"leaf\". This works with the GNU library implementation, " +"but is not in the System V documentation." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "EXAMPLES" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The following program inserts twelve random numbers into a binary tree, " +"where duplicate numbers are collapsed, then prints the numbers in order." +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, no-wrap +msgid "" +"#define _GNU_SOURCE /* Expose declaration of tdestroy() */\n" +"#include E<lt>search.hE<gt>\n" +"#include E<lt>stddef.hE<gt>\n" +"#include E<lt>stdio.hE<gt>\n" +"#include E<lt>stdlib.hE<gt>\n" +"#include E<lt>time.hE<gt>\n" +"\\&\n" +"static void *root = NULL;\n" +"\\&\n" +"static void *\n" +"xmalloc(size_t n)\n" +"{\n" +" void *p;\n" +"\\&\n" +" p = malloc(n);\n" +" if (p)\n" +" return p;\n" +" fprintf(stderr, \"insufficient memory\\en\");\n" +" exit(EXIT_FAILURE);\n" +"}\n" +"\\&\n" +"static int\n" +"compare(const void *pa, const void *pb)\n" +"{\n" +" if (*(int *) pa E<lt> *(int *) pb)\n" +" return -1;\n" +" if (*(int *) pa E<gt> *(int *) pb)\n" +" return 1;\n" +" return 0;\n" +"}\n" +"\\&\n" +"static void\n" +"action(const void *nodep, VISIT which, int depth)\n" +"{\n" +" int *datap;\n" +"\\&\n" +" switch (which) {\n" +" case preorder:\n" +" break;\n" +" case postorder:\n" +" datap = *(int **) nodep;\n" +" printf(\"%6d\\en\", *datap);\n" +" break;\n" +" case endorder:\n" +" break;\n" +" case leaf:\n" +" datap = *(int **) nodep;\n" +" printf(\"%6d\\en\", *datap);\n" +" break;\n" +" }\n" +"}\n" +"\\&\n" +"int\n" +"main(void)\n" +"{\n" +" int *ptr;\n" +" int **val;\n" +"\\&\n" +" srand(time(NULL));\n" +" for (unsigned int i = 0; i E<lt> 12; i++) {\n" +" ptr = xmalloc(sizeof(*ptr));\n" +" *ptr = rand() & 0xff;\n" +" val = tsearch(ptr, &root, compare);\n" +" if (val == NULL)\n" +" exit(EXIT_FAILURE);\n" +" if (*val != ptr)\n" +" free(ptr);\n" +" }\n" +" twalk(root, action);\n" +" tdestroy(root, free);\n" +" exit(EXIT_SUCCESS);\n" +"}\n" +msgstr "" + +#. SRC END +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SEE ALSO" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "B<bsearch>(3), B<hsearch>(3), B<lsearch>(3), B<qsort>(3)" +msgstr "" + +#. type: TH +#: debian-bookworm +#, no-wrap +msgid "2023-01-26" +msgstr "" + +#. type: TH +#: debian-bookworm +#, no-wrap +msgid "Linux man-pages 6.03" +msgstr "" + +#. type: SH +#: debian-bookworm +#, no-wrap +msgid "VERSIONS" +msgstr "" + +#. type: Plain text +#: debian-bookworm +msgid "B<twalk_r>() is available since glibc 2.30." +msgstr "" + +#. type: Plain text +#: debian-bookworm +msgid "" +"POSIX.1-2001, POSIX.1-2008, SVr4. The functions B<tdestroy>() and " +"B<twalk_r>() are GNU extensions." +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"#define _GNU_SOURCE /* Expose declaration of tdestroy() */\n" +"#include E<lt>search.hE<gt>\n" +"#include E<lt>stddef.hE<gt>\n" +"#include E<lt>stdio.hE<gt>\n" +"#include E<lt>stdlib.hE<gt>\n" +"#include E<lt>time.hE<gt>\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "static void *root = NULL;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"static void *\n" +"xmalloc(size_t n)\n" +"{\n" +" void *p;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +" p = malloc(n);\n" +" if (p)\n" +" return p;\n" +" fprintf(stderr, \"insufficient memory\\en\");\n" +" exit(EXIT_FAILURE);\n" +"}\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"static int\n" +"compare(const void *pa, const void *pb)\n" +"{\n" +" if (*(int *) pa E<lt> *(int *) pb)\n" +" return -1;\n" +" if (*(int *) pa E<gt> *(int *) pb)\n" +" return 1;\n" +" return 0;\n" +"}\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"static void\n" +"action(const void *nodep, VISIT which, int depth)\n" +"{\n" +" int *datap;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +" switch (which) {\n" +" case preorder:\n" +" break;\n" +" case postorder:\n" +" datap = *(int **) nodep;\n" +" printf(\"%6d\\en\", *datap);\n" +" break;\n" +" case endorder:\n" +" break;\n" +" case leaf:\n" +" datap = *(int **) nodep;\n" +" printf(\"%6d\\en\", *datap);\n" +" break;\n" +" }\n" +"}\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"int\n" +"main(void)\n" +"{\n" +" int *ptr;\n" +" int **val;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +" srand(time(NULL));\n" +" for (unsigned int i = 0; i E<lt> 12; i++) {\n" +" ptr = xmalloc(sizeof(*ptr));\n" +" *ptr = rand() & 0xff;\n" +" val = tsearch(ptr, &root, compare);\n" +" if (val == NULL)\n" +" exit(EXIT_FAILURE);\n" +" if (*val != ptr)\n" +" free(ptr);\n" +" }\n" +" twalk(root, action);\n" +" tdestroy(root, free);\n" +" exit(EXIT_SUCCESS);\n" +"}\n" +msgstr "" + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "2023-07-20" +msgstr "" + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "Linux man-pages 6.05.01" +msgstr "" + +#. type: TH +#: opensuse-leap-15-6 +#, no-wrap +msgid "2023-03-30" +msgstr "" + +#. type: TH +#: opensuse-leap-15-6 +#, no-wrap +msgid "Linux man-pages 6.04" +msgstr "" |