一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

10個(gè)超贊的C語(yǔ)言開(kāi)源項(xiàng)目

小麥大叔 ? 來(lái)源:小麥大叔 ? 作者:小麥大叔 ? 2022-08-05 14:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

大家好,我是小麥。

今天和大家分享一下10個(gè)超贊的C語(yǔ)言開(kāi)源項(xiàng)目。

  1. Webbench
  2. Tinyhttpd
  3. cJSON
  4. CMockery
  5. Libev
  6. Memcached
  7. Lua
  8. SQLite
  9. UNIX v6
  10. NETBSD

1. Webbench

Webbench 是一個(gè)在 linux 下使用的非常簡(jiǎn)單的網(wǎng)站壓測(cè)工具。

它使用 fork()模擬多個(gè)客戶(hù)端同時(shí)訪問(wèn)我們?cè)O(shè)定的 URL,測(cè)試網(wǎng)站在壓力下工作的性能。

最多可以模擬 3 萬(wàn)個(gè)并發(fā)連接去測(cè)試網(wǎng)站的負(fù)載能力。

Webbench 使用C語(yǔ)言編寫(xiě), 代碼實(shí)在太簡(jiǎn)潔,源碼加起來(lái)不到 600 行。

項(xiàng)目地址

http://home.tiscali.cz/~cz210552/webbench.html

2. Tinyhttpd

tinyhttpd 是一個(gè)超輕量型 Http Server,使用C語(yǔ)言開(kāi)發(fā),全部代碼只有 502 行(包括注釋),附帶一個(gè)簡(jiǎn)單的 Client

可以通過(guò)閱讀這段代碼理解一個(gè) Http Server 的本質(zhì)

項(xiàng)目地址

http://sourceforge.net/projects/tinyhttpd/

3. cJSON

cJSON 是C語(yǔ)言中的一個(gè) JSON 編解碼器,非常輕量級(jí),C文件只有 500 多行,速度也非常理想。

cJSON 也存在幾個(gè)弱點(diǎn),雖然功能不是非常強(qiáng)大,但 cJSON 的小身板和速度是最值得贊賞的。

其代碼被非常好地維護(hù)著,結(jié)構(gòu)也簡(jiǎn)單易懂,可以作為一個(gè)非常好的C語(yǔ)言項(xiàng)目進(jìn)行學(xué)習(xí)。

項(xiàng)目主頁(yè):

http://sourceforge.net/projects/cjson/

4. CMockery

cmockerygoogle 發(fā)布的用于C單元測(cè)試的一個(gè)輕量級(jí)的框架。

它很小巧,對(duì)其他開(kāi)源包沒(méi)有依賴(lài),對(duì)被測(cè)試代碼侵入性小。

cmockery 的源代碼行數(shù)不到 3K,你閱讀一下 will_returnmock 的源代碼就一目了然了。

主要特點(diǎn):

  • 免費(fèi)且開(kāi)源,google 提供技術(shù)支持;
  • 輕量級(jí)的框架,使測(cè)試更加快速簡(jiǎn)單;
  • 避免使用復(fù)雜的編譯器特性,對(duì)老版本的編譯器來(lái)講,兼容性好;
  • 并不強(qiáng)制要求待測(cè)代碼必須依賴(lài) C99 標(biāo)準(zhǔn),這一特性對(duì)許多嵌入式系統(tǒng)的開(kāi)發(fā)很有用

項(xiàng)目地址

http://code.google.com/p/cmockery/downloads/list

5. Libev

libev 是一個(gè)開(kāi)源的事件驅(qū)動(dòng)庫(kù),基于 epoll,kqueue 等 OS 提供的基礎(chǔ)設(shè)施。

其以高效出名,它可以將 IO 事件,定時(shí)器,和信號(hào)統(tǒng)一起來(lái),統(tǒng)一放在事件處理這一套框架下處理。

基于 Reactor 模式,效率較高,并且代碼精簡(jiǎn)(4.15 版本 8000 多行),是學(xué)習(xí)事件驅(qū)動(dòng)編程的很好的資源

項(xiàng)目地址

http://software.schmorp.de/pkg/libev.html

6. Memcached

Memcached 是一個(gè)高性能的分布式內(nèi)存對(duì)象緩存系統(tǒng),用于動(dòng)態(tài) Web 應(yīng)用以減輕數(shù)據(jù)庫(kù)負(fù)載。

它通過(guò)在內(nèi)存中緩存數(shù)據(jù)和對(duì)象來(lái)減少讀取數(shù)據(jù)庫(kù)的次數(shù),從而提供動(dòng)態(tài)數(shù)據(jù)庫(kù)驅(qū)動(dòng)網(wǎng)站的速度。

Memcached 基于一個(gè)存儲(chǔ)鍵/值對(duì)的 hashmap。

Memcached-1.4.7 的代碼量還是可以接受的,只有 10K 行左右

項(xiàng)目地址

http://memcached.org/

7. Lua

Lua 很棒,Lua 是巴西人發(fā)明的,這些都令我不爽,但是還不至于臉紅,最多眼紅。

讓我臉紅的是 Lua 的源代碼,百分之一百的 ANSI C,一點(diǎn)都不摻雜。

在任何支持 ANSI C 編譯器的平臺(tái)上都可以輕松編譯通過(guò)。

我試過(guò),真是一點(diǎn)廢話(huà)都沒(méi)有。

Lua 的代碼數(shù)量足夠小,5.1.4 僅僅 1.5W 行,去掉空白行和注釋估計(jì)能到 1W 行。

項(xiàng)目地址

http://www.lua.org/

8. SQLite

SQLite 是一個(gè)開(kāi)源的嵌入式關(guān)系數(shù)據(jù)庫(kù),實(shí)現(xiàn)自包容、零配置、支持事務(wù)的 SQL 數(shù)據(jù)庫(kù)引擎。其特點(diǎn)是高度便攜、使用方便、結(jié)構(gòu)緊湊、高效、可靠。

足夠小,大致 3 萬(wàn)行C代碼,250K。

項(xiàng)目地址

http://www.sqlite.org/

9. UNIX v6

UNIX V6 的內(nèi)核源代碼包括設(shè)備驅(qū)動(dòng)程序在內(nèi)約有 1 萬(wàn)行,這個(gè)數(shù)量的源代碼,初學(xué)者是能夠充分理解的。有一種說(shuō)法是一個(gè)人所能理解的代碼量上限為 1 萬(wàn)行,UNIX V6 的內(nèi)核源代碼從數(shù)量上看正好在這個(gè)范圍之內(nèi)。

看到這里,大家是不是也有“如果只有 1 萬(wàn)行的話(huà)沒(méi)準(zhǔn)兒我也能學(xué)會(huì)”的想法呢?

另一方面,最近的操作系統(tǒng),例如 Linux 最新版的內(nèi)核源代碼據(jù)說(shuō)超過(guò)了 1000 萬(wàn)行。

就算不是初學(xué)者,想完全理解全部代碼基本上也是不可能的。

項(xiàng)目地址

http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6

10. NETBSD

NetBSD 是一個(gè)免費(fèi)的,具有高度移植性的 UNIX-like 操作系統(tǒng)。

NetBSD 計(jì)劃的口號(hào)是:”Of course it runs NetBSD”。

它設(shè)計(jì)簡(jiǎn)潔,代碼規(guī)范,擁有眾多先進(jìn)特性,使得它在業(yè)界和學(xué)術(shù)界廣受好評(píng)。

由于簡(jiǎn)潔的設(shè)計(jì)和先進(jìn)的特征,使得它在生產(chǎn)和研究方面,都有卓越的表現(xiàn),而且它也有受使用者支持的完整的源代碼。

許多程序都可以很容易地通過(guò) NetBSD Packages Collection 獲得。

審核編輯 :李倩



聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    180

    文章

    7632

    瀏覽量

    141785
  • 編解碼器
    +關(guān)注

    關(guān)注

    0

    文章

    274

    瀏覽量

    24759
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70756

原文標(biāo)題:10個(gè)超贊的C語(yǔ)言開(kāi)源項(xiàng)目,值得學(xué)習(xí)

文章出處:【微信號(hào):knifewheat,微信公眾號(hào):小麥大叔】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    C語(yǔ)言精彩編程百例-364頁(yè)

    內(nèi)容提要 C是一種通用的程序設(shè)計(jì)語(yǔ)言,它包含了緊湊的表達(dá)式、豐富的運(yùn)算符集合、現(xiàn)代控制流以及數(shù)據(jù)結(jié)構(gòu)等四個(gè)部分。C語(yǔ)言功能豐富,衣達(dá)能力強(qiáng),
    發(fā)表于 06-13 17:28

    提高篇——C語(yǔ)言核心技術(shù)(中文版)

    嚴(yán)謹(jǐn)?shù)男g(shù)語(yǔ)表介紹C語(yǔ)言;第二部分描述標(biāo)準(zhǔn)鏈接庫(kù);第三部分介紹GNU軟件包中常用的編譯和測(cè)試工具。 獲取完整文檔資料可下載附件哦!?。?!如果內(nèi)容有幫助可以關(guān)注、點(diǎn)、評(píng)論支持一下哦~
    發(fā)表于 06-13 16:39

    開(kāi)源項(xiàng)目!Open Echo:一個(gè)開(kāi)源的聲納項(xiàng)目

    “ 這是一個(gè)還在迭代中的項(xiàng)目。開(kāi)源的回聲測(cè)深儀/水深測(cè)量?jī)x/聲吶系統(tǒng),適用于水文測(cè)繪及科研用途?;贏rduino平臺(tái)開(kāi)發(fā)并具備良好兼容性 ” Open Echo 概覽 作為持續(xù)迭代的開(kāi)源
    發(fā)表于 03-20 13:37

    Open Echo:一個(gè)開(kāi)源的聲納項(xiàng)目

    “ ?這是一個(gè)還在迭代中的項(xiàng)目。開(kāi)源的回聲測(cè)深儀/水深測(cè)量?jī)x/聲吶系統(tǒng),適用于水文測(cè)繪及科研用途?;贏rduino平臺(tái)開(kāi)發(fā)并具備良好兼容性? ” ? Open Echo 概覽 作為持續(xù)迭代
    的頭像 發(fā)表于 03-20 11:14 ?1005次閱讀
    Open Echo:一<b class='flag-5'>個(gè)</b><b class='flag-5'>開(kāi)源</b>的聲納<b class='flag-5'>項(xiàng)目</b>

    必看!15個(gè)C語(yǔ)言常見(jiàn)陷阱及避坑指南

    ? C語(yǔ)言雖強(qiáng)大,但隱藏的“坑”也不少!稍不留神就會(huì)導(dǎo)致程序崩潰、數(shù)據(jù)異常。本文整理15個(gè)高頻陷阱,助你寫(xiě)出更穩(wěn)健的代碼! ? 陷阱1:運(yùn)算符優(yōu)先級(jí)混淆? 問(wèn)題:運(yùn)算符優(yōu)先級(jí)不同可能導(dǎo)致計(jì)算順序錯(cuò)誤
    的頭像 發(fā)表于 03-16 12:10 ?623次閱讀

    為什么學(xué)了C語(yǔ)言,卻寫(xiě)不出像樣的項(xiàng)目?

    在學(xué)習(xí)編程的路上,C語(yǔ)言幾乎是每個(gè)程序員的“必修課”。不管你是打算從事嵌入式開(kāi)發(fā)、系統(tǒng)編程,還是想要深入理解操作系統(tǒng)的底層原理,C語(yǔ)言都是一塊重要的基石。然而許多人在學(xué)習(xí)
    的頭像 發(fā)表于 03-14 17:37 ?441次閱讀
    為什么學(xué)了<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>,卻寫(xiě)不出像樣的<b class='flag-5'>項(xiàng)目</b>?

    單片機(jī)C語(yǔ)言編程寶典大全,初學(xué)必備【強(qiáng)推下載!】

    (400頁(yè)P(yáng)PT) 6. 單片機(jī)程序設(shè)計(jì)實(shí)例 7. 單片機(jī)應(yīng)用程序設(shè)計(jì)技術(shù)_周航慈.pdf 8. 8051單片機(jī)C語(yǔ)言徹底應(yīng)用 9. C語(yǔ)言程序?qū)嵗笕?220
    發(fā)表于 03-14 11:03

    開(kāi)源項(xiàng)目!教你如何制作一個(gè)開(kāi)源教育機(jī)械臂

    128x64實(shí)時(shí)反饋。 經(jīng)過(guò)多次失敗的測(cè)試和設(shè)計(jì)迭代,Pedro 2.0終于在2024年發(fā)布,具有改進(jìn)的功能,經(jīng)過(guò)徹底的測(cè)試和驗(yàn)證。 Pedro 2.0是一個(gè)完全開(kāi)源項(xiàng)目,旨在讓每個(gè)人都可以訪問(wèn)
    發(fā)表于 03-10 11:22

    ElfBoard開(kāi)源項(xiàng)目|智能消防車(chē)項(xiàng)目

    智慧城市的建設(shè)推動(dòng)了城市各個(gè)領(lǐng)域的智能化發(fā)展,消防領(lǐng)域也不例外。智慧消防作為智慧城市的重要組成部分,其建設(shè)和發(fā)展與智慧城市的建設(shè)緊密相連。 在此背景下,ElfBoard團(tuán)隊(duì)完成了一個(gè)創(chuàng)新性的開(kāi)源
    的頭像 發(fā)表于 01-04 16:43 ?692次閱讀
    ElfBoard<b class='flag-5'>開(kāi)源</b><b class='flag-5'>項(xiàng)目</b>|智能消防車(chē)<b class='flag-5'>項(xiàng)目</b>

    AKI跨語(yǔ)言調(diào)用庫(kù)神助攻C/C++代碼遷移至HarmonyOS NEXT

    產(chǎn)品創(chuàng)新與功能迭代,而非技術(shù)遷移的細(xì)節(jié)問(wèn)題,大幅提升開(kāi)發(fā)效率。 據(jù)悉,在涉及C/C++/ETS跨越語(yǔ)言調(diào)用的鴻蒙化應(yīng)用中,有超過(guò)80%的項(xiàng)目都在使用AKI,如某知名購(gòu)物應(yīng)用,使用后減少
    發(fā)表于 01-02 17:08

    開(kāi)放原子開(kāi)源基金會(huì)與三個(gè)開(kāi)源項(xiàng)目舉行捐贈(zèng)簽約儀式

    近日,在2024開(kāi)放原子開(kāi)發(fā)者大會(huì)暨首屆開(kāi)源技術(shù)學(xué)術(shù)大會(huì)開(kāi)幕式上,開(kāi)放原子開(kāi)源基金會(huì)秘書(shū)長(zhǎng)助理李博與openKylin、EasyAda、KWDB開(kāi)源項(xiàng)目捐贈(zèng)方代表共同簽約。
    的頭像 發(fā)表于 12-23 11:29 ?710次閱讀

    凌蒙派OpenHarmony開(kāi)源項(xiàng)目榮獲本期Gitee官方推薦

    近日,我司凌蒙派OpenHarmony開(kāi)源項(xiàng)目榮獲本期Gitee官方推薦。本期Gitee官方推薦不僅是對(duì)凌蒙派OpenHarmony開(kāi)源項(xiàng)目的高度認(rèn)可,也是對(duì)我司在推動(dòng)
    的頭像 發(fā)表于 11-20 01:04 ?843次閱讀
    凌蒙派OpenHarmony<b class='flag-5'>開(kāi)源</b><b class='flag-5'>項(xiàng)目</b>榮獲本期Gitee官方推薦

    C語(yǔ)言與Java語(yǔ)言的對(duì)比

    C語(yǔ)言和Java語(yǔ)言都是當(dāng)前編程領(lǐng)域中的重要成員,它們各自具有獨(dú)特的優(yōu)勢(shì)和特點(diǎn),適用于不同的應(yīng)用場(chǎng)景。以下將從語(yǔ)法特性、內(nèi)存管理、跨平臺(tái)性、性能、應(yīng)用領(lǐng)域等多個(gè)方面對(duì)C
    的頭像 發(fā)表于 10-29 17:31 ?1081次閱讀

    搭建開(kāi)源語(yǔ)言模型服務(wù)的方法

    本文我們將總結(jié)5種搭建開(kāi)源語(yǔ)言模型服務(wù)的方法,每種都附帶詳細(xì)的操作步驟,以及各自的優(yōu)缺點(diǎn)。
    的頭像 發(fā)表于 10-29 09:17 ?696次閱讀

    真格基金宣布捐贈(zèng)開(kāi)源AI項(xiàng)目vLLM

    萬(wàn)個(gè)通用人工智能項(xiàng)目,Hugging Face 上有超過(guò) 40 萬(wàn)個(gè)模型。每一周,有超過(guò) 100 萬(wàn)行代碼在開(kāi)源 AI 領(lǐng)域中創(chuàng)建,開(kāi)發(fā)者像交換禮物一樣,從全世界的各個(gè)角落為
    的頭像 發(fā)表于 09-24 16:13 ?796次閱讀