# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2024-06-01 06:32+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \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 debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "" #. type: TH #: archlinux debian-unstable #, no-wrap msgid "Linux man-pages 6.8" 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, 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 Esearch.hE>\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\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 "" "BIB<, void **>IB<,>\n" "B< int (*>IB<)(const void *, const void *));>\n" "BIB<, void *const *>IB<,>\n" "B< int (*>IB<)(const void *, const void *));>\n" "BIB<, void **restrict >IB<,>\n" "B< int (*>IB<)(const void *, const void *));>\n" "BIB<,>\n" "B< void (*>IB<)(const void *>IB<, VISIT >IB<,>\n" "B< int >IB<));>\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 Esearch.hE>\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 "" "BIB<,>\n" "B< void (*>IB<)(const void *>IB<, VISIT >IB<,>\n" "B< void *>IB<),>\n" "B< void *>IB<);>\n" "BIB<, void (*>IB<)(void *>IB<));>\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(), B(), B(), and B() 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 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() searches the tree for an item. I points to the item to " "be searched for. I points to a variable which points to the root of " "the tree. If the tree is empty, then the variable that I points to " "should be set to NULL. If the item is found in the tree, then B() " "returns a pointer to the corresponding tree node. (In other words, " "B() returns a pointer to a pointer to the data item.) If the item " "is not found, then B() 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() is like B(), except that if the item is not found, then " "B() 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() deletes an item from the tree. Its arguments are the same as " "for B()." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() performs depth-first, left-to-right traversal of a binary tree. " "I 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() calls the " "user function I each time a node is visited (that is, three times " "for an internal node, and once for a leaf). I, 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, B, or B depending on whether this " "is the first, second, or third visit to the internal node, or the value " "B if this is the single visit to a leaf node. (These symbols are " "defined in Isearch.hE>.) 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, B, and B are known as " "B, B, and B: before visiting the children, " "after the first and before the second, and after visiting the children. " "Thus, the choice of name B 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() is similar to B(), but instead of the I " "argument, the I 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() removes the whole tree pointed to by I, freeing all " "resources allocated by the B() function. For the data in each " "tree node the function I is called. The pointer to the data is " "passed as the argument to the function. If no such work is necessary, " "I 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() 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() 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() 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() 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(), B(), and B() also return NULL if I 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(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(),\n" "B(),\n" "B()" 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()" 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()" 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()" 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()" msgstr "" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" msgstr "" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" 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() 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() 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() 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 Esearch.hE\n" "#include Estddef.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Etime.hE\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 *(int *) pb)\n" " return -1;\n" " if (*(int *) pa E *(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 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(3), B(3), B(3), B(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() is available since glibc 2.30." msgstr "" #. type: Plain text #: debian-bookworm msgid "" "POSIX.1-2001, POSIX.1-2008, SVr4. The functions B() and " "B() 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 Esearch.hE\n" "#include Estddef.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Etime.hE\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 *(int *) pb)\n" " return -1;\n" " if (*(int *) pa E *(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 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 #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "" #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" 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 "" #. type: TH #: opensuse-tumbleweed #, no-wrap msgid "Linux man-pages (unreleased)" msgstr ""