十個值得研究的c開源專案

2021-07-13 05:22:04 字數 880 閱讀 3946

算是比較輕量級的開源專案,作為學習研究c語言,提公升c語言功底!好處很多很多!

cmockery是google發布的用於c單元測試的乙個輕量級的框架。它很小巧,對其他開源包沒有依賴,對被測試**侵入性小。cmockery的源**行數不到3k,你閱讀一下will_return和mock的源**就一目了然了。

主要特點:

免費且開源,google提供技術支援;

輕量級的框架,使測試更加快速簡單;

避免使用複雜的編譯器特性,對老版本的編譯器來講,相容性好;

並不強制要求待測**必須依賴c99標準,這一特性對許多嵌入式系統的開發很有用

libev是乙個開源的事件驅動庫,基於epoll,kqueue等os提供的基礎設施。其以高效出名,它可以將io事件,定時器,和訊號統一起來,統一放在事件處理這一套框架下處理。基於reactor模式,效率較高,並且**精簡(4.15版本8000多行),是學習事件驅動程式設計的很好的資源。

lua很棒,lua是巴西人發明的,這些都令我不爽,但是還不至於臉紅,最多眼紅。

nginx("engine x") 是乙個高效能的 http 和反向**伺服器,也是乙個 imap/pop3/smtp **伺服器 。nginx 是由 igor sysoev 為俄羅斯訪問量第二的rambler.ru站點開發的,它已經在該站點執行超過四年多了。igor 將源**以類bsd許可證的形式發布。自nginx 發布四年來,nginx 已經因為它的穩定性、豐富的功能集、 示例配置檔案和低系統資源的消耗而聞名了。

unix v6 的核心源**包括裝置驅動程式在內 約有1 萬行,這個數量的源**,初學者是能夠充分理解的。有一種說法是乙個人所能理解的**量上限為1 萬行,unix v6的核心源**從數量上看正好在這個範圍之內。看到這裡,大家是不是也有「如果只有1萬行的話沒準兒我也能學會」的想法呢?

值得關注的十個C語言開源專案

1 webbench webbench 是乙個在 linux 下使用的非常簡單的 壓測工具。它使用 fork 模擬多個客戶端同時訪問我們設定的 url,測試 在壓力下工作的效能,最多可以模擬 3 萬個併發連線去測試 的負載能力。webbench 使用c語言編寫,實在太簡潔,原始碼加起來不到 600 ...

十個最值得閱讀學習的C開源專案代

cmockery是google發布的用於c單元測試的乙個輕量級的框架。它很小巧,對其他開源包沒有依賴,對被測試 侵入性小。cmockery的源 行數不到3k,你閱讀一下will return和mock的源 就一目了然了。主要特點 免費且開源,google提供技術支援 輕量級的框架,使測試更加快速簡單...

原始碼閱讀 十個C開源專案

cmockery是google發布的用於c單元測試的乙個輕量級的框架。它很小巧,對其他開源包沒有依賴,對被測試 侵入性小。cmockery的源 行數不到3k,你閱讀一下will return和mock的源 就一目了然了。主要特點 免費且開源,google提供技術支援 輕量級的框架,使測試更加快速簡單...