{"id":20818,"date":"2024-03-15T21:03:32","date_gmt":"2024-03-15T21:03:32","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/"},"modified":"2024-03-21T19:00:07","modified_gmt":"2024-03-21T19:00:07","slug":"how-to-use-the-sort-function-in-the-c-language","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/","title":{"rendered":"How to use the sort function in the C language?"},"content":{"rendered":"<p>In C language, you can use the qsort function from the stdlib.h header file to perform sorting operations.<\/p>\n<p>The prototype of the qsort function is as follows:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-type\">void<\/span> <span class=\"hljs-title function_\">qsort<\/span><span class=\"hljs-params\">(<span class=\"hljs-type\">void<\/span>* base, <span class=\"hljs-type\">size_t<\/span> num, <span class=\"hljs-type\">size_t<\/span> size, <span class=\"hljs-type\">int<\/span> (*compar)(<span class=\"hljs-type\">const<\/span> <span class=\"hljs-type\">void<\/span>*, <span class=\"hljs-type\">const<\/span> <span class=\"hljs-type\">void<\/span>*))<\/span>;\r\n<\/code><\/pre>\n<p>Parameter description:<\/p>\n<ol>\n<li>Pointer base pointing to the first element of the array to be sorted.<\/li>\n<li>num: the number of elements in the array.<\/li>\n<li>size: the size of each element, measured in bytes.<\/li>\n<li>compar: a pointer to a function used to compare two elements.<\/li>\n<\/ol>\n<p>The prototype of the comparison function compar is as follows:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-type\">int<\/span> <span class=\"hljs-title function_\">compar<\/span><span class=\"hljs-params\">(<span class=\"hljs-type\">const<\/span> <span class=\"hljs-type\">void<\/span>* a, <span class=\"hljs-type\">const<\/span> <span class=\"hljs-type\">void<\/span>* b)<\/span>;\r\n<\/code><\/pre>\n<p>The comparison function should return an integer value indicating the relationship between a and b. It should return a negative number if a is less than b, 0 if they are equal, and a positive number if a is greater than b.<\/p>\n<p>Here is an example of sorting using the qsort function:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;stdio.h&gt;<\/span><\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;stdlib.h&gt;<\/span><\/span>\r\n\r\n<span class=\"hljs-comment\">\/\/ \u6bd4\u8f83\u51fd\u6570\uff0c\u6309\u7167\u4ece\u5c0f\u5230\u5927\u7684\u987a\u5e8f\u6392\u5e8f<\/span>\r\n<span class=\"hljs-type\">int<\/span> <span class=\"hljs-title function_\">compare<\/span><span class=\"hljs-params\">(<span class=\"hljs-type\">const<\/span> <span class=\"hljs-type\">void<\/span>* a, <span class=\"hljs-type\">const<\/span> <span class=\"hljs-type\">void<\/span>* b)<\/span> {\r\n    <span class=\"hljs-keyword\">return<\/span> (*(<span class=\"hljs-type\">int<\/span>*)a - *(<span class=\"hljs-type\">int<\/span>*)b);\r\n}\r\n\r\n<span class=\"hljs-type\">int<\/span> <span class=\"hljs-title function_\">main<\/span><span class=\"hljs-params\">()<\/span> {\r\n    <span class=\"hljs-type\">int<\/span> arr[] = {<span class=\"hljs-number\">5<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">8<\/span>, <span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">6<\/span>};\r\n    <span class=\"hljs-type\">int<\/span> n = <span class=\"hljs-keyword\">sizeof<\/span>(arr) \/ <span class=\"hljs-keyword\">sizeof<\/span>(arr[<span class=\"hljs-number\">0<\/span>]);\r\n\r\n    qsort(arr, n, <span class=\"hljs-keyword\">sizeof<\/span>(<span class=\"hljs-type\">int<\/span>), compare);\r\n\r\n    <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"\u6392\u5e8f\u540e\u7684\u6570\u7ec4\uff1a\"<\/span>);\r\n    <span class=\"hljs-keyword\">for<\/span> (<span class=\"hljs-type\">int<\/span> i = <span class=\"hljs-number\">0<\/span>; i &lt; n; i++) {\r\n        <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"%d \"<\/span>, arr[i]);\r\n    }\r\n    <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"\\n\"<\/span>);\r\n\r\n    <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-number\">0<\/span>;\r\n}\r\n<\/code><\/pre>\n<p>Result of execution:<\/p>\n<pre class=\"post-pre\"><code>\u6392\u5e8f\u540e\u7684\u6570\u7ec4\uff1a1 2 5 6 8\r\n<\/code><\/pre>\n<p>In this code snippet, a comparison function called compare is first defined to sort in ascending order. Then, an integer array called arr is declared and sorted using the qsort function. Finally, the sorted result is outputted.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In C language, you can use the qsort function from the stdlib.h header file to perform sorting operations. The prototype of the qsort function is as follows: void qsort(void* base, size_t num, size_t size, int (*compar)(const void*, const void*)); Parameter description: Pointer base pointing to the first element of the array to be sorted. num: [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-20818","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to use the sort function in the C language? - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to use the sort function in the C language?\" \/>\n<meta property=\"og:description\" content=\"In C language, you can use the qsort function from the stdlib.h header file to perform sorting operations. The prototype of the qsort function is as follows: void qsort(void* base, size_t num, size_t size, int (*compar)(const void*, const void*)); Parameter description: Pointer base pointing to the first element of the array to be sorted. num: [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T21:03:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T19:00:07+00:00\" \/>\n<meta name=\"author\" content=\"Liam\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Liam\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/\"},\"author\":{\"name\":\"Liam\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671\"},\"headline\":\"How to use the sort function in the C language?\",\"datePublished\":\"2024-03-15T21:03:32+00:00\",\"dateModified\":\"2024-03-21T19:00:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/\"},\"wordCount\":182,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/\",\"name\":\"How to use the sort function in the C language? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T21:03:32+00:00\",\"dateModified\":\"2024-03-21T19:00:07+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to use the sort function in the C language?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671\",\"name\":\"Liam\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g\",\"caption\":\"Liam\"},\"sameAs\":[\"http:\/\/Wilson\"],\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/liamwilson\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to use the sort function in the C language? - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/","og_locale":"en_US","og_type":"article","og_title":"How to use the sort function in the C language?","og_description":"In C language, you can use the qsort function from the stdlib.h header file to perform sorting operations. The prototype of the qsort function is as follows: void qsort(void* base, size_t num, size_t size, int (*compar)(const void*, const void*)); Parameter description: Pointer base pointing to the first element of the array to be sorted. num: [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T21:03:32+00:00","article_modified_time":"2024-03-21T19:00:07+00:00","author":"Liam","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Liam","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/"},"author":{"name":"Liam","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671"},"headline":"How to use the sort function in the C language?","datePublished":"2024-03-15T21:03:32+00:00","dateModified":"2024-03-21T19:00:07+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/"},"wordCount":182,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/","name":"How to use the sort function in the C language? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T21:03:32+00:00","dateModified":"2024-03-21T19:00:07+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-use-the-sort-function-in-the-c-language\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to use the sort function in the C language?"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671","name":"Liam","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g","caption":"Liam"},"sameAs":["http:\/\/Wilson"],"url":"https:\/\/www.silicloud.com\/blog\/author\/liamwilson\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/20818","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=20818"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/20818\/revisions"}],"predecessor-version":[{"id":54642,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/20818\/revisions\/54642"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=20818"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=20818"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=20818"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}