色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

將curl使用的C語言標準從C89升級到C99?

CPP開發者 ? 來源:OSC開源社區 ? 作者:OSC開源社區 ? 2022-11-22 14:48 ? 次閱讀

curl 創始人兼核心開發者 Daniel Stenberg發表博客稱,他正在考慮是否要將 curl 使用的 C 語言標準從 C89 升級到 C99。77cd3b1c-6a19-11ed-8abf-dac502259ad0.pngDaniel 表示,他觀察到許多廣受歡迎的 C 語言開源項目正在向前發展,并將所使用的 C 語言標準升級到 C99 或更高版本,例如 Linux、Git 等項目。而且在 curl 的郵件列表中也經常出現關于升級 C 語言標準的討論,特別是現在已計劃在 2023 年春季發布 curl v8,所以從理論上來講,這可能是進行一些更改的好時機。如果要升級 C 語言標準到 C99,那就要考慮哪些 C99 特性可以改進像 curl 這樣的項目。Daniel 表示自己能想到的可能給 curl 代碼帶來積極影響的部分特性是:
  • //注釋

  • __func__預定義標識符

  • 中使用布爾類型

  • 指定的結構體初始值設定項
    空的宏參數

  • 中使用擴展的整數類型

  • 靈活的數組成員 (zero size arrays)

  • 內聯函數

  • 整數常量類型規則

  • 將聲明和代碼混合

  • long long類型和庫函數

  • snprintf()函數家族

  • 枚舉聲明中支持尾隨逗號

  • 可變參數宏

  • 長度可變的數組

當然,開發者還可以使用許多其他的特性,但問題是他們是否真的需要這些特性。而且對于上面提到的部分特性,Daniel 表示他們已經有了不錯的替代方案,其他的特性要么就是無關緊要,要么就是可能會讓人分心。因此,Daniel 認為,如果馬上為 curl 項目采用 C99 所有新特性,這會導致重寫大部分代碼,從而引入錯誤。此外還有一個問題,如果真的要升級 C 語言標準,是否應該直接升級到 C11,而不是停留在 C99。在 curl 社區對于升級 C 語言標準的討論中,沒有人能清楚地闡明升級之后能給 curl 項目帶來的好處。Daniel 表示他們目前看到的風險是,大家都陷入了與項目非常不相關的討論和變化中,而這些討論和變化實際上可能不會使項目取得很大進展。無論是功能還是質量 / 安全性。Daniel 認為還有很多更好的事情要做,還有更多值得付出的努力來投入精力,這實際上可以改進項目并將其推進。比如改進測試套件、增加測試覆蓋率、確保更多代碼由模糊器執行。Daniel決定從 curl 8 開始,他們將要求編譯器支持 64 位數據類型,主要是為了查看它的運行情況。這不是原來的 C89 版本中存在的特性,而是在 C99 中引入的。目前沒有不支持此功能的現代編譯器。他認為,這也許是可以繼續適應和使用特定的 “后 C89 特性” 的方式。通過挑選特定的特性,然后隨著時間的推移慢慢適應它們。最后,Daniel 表示不考慮使用任何其他語言重寫 curl。

此外,curl 作者表示不想推出 7.100,為此制定了 curl 8 發布計劃。curl 7 的版本號已迭代到7.86.0—— 離發布 7.100.0 只差十多個版本,但 curl 作者 Daniel Stenberg不希望在次版本號中使用三位數,因為他擔心這會引發不必要的問題,甚至可能會導致他人用于比較版本的腳本出錯。由于 curl 通常每隔 8 周發布一次新版本,如果按照計劃的發布節奏,curl 7 的次版本號差不多在兩年后就會到達 100。Daniel 發現明年是 curl 的一個重要周年紀念日,他想到了一個可以避免 "100" 版本號的方案 ——在 curl 誕生 25 周年當天發布 curl 8。如此一來,既凸顯了周年紀念日的地位,又體現了升級主版本號的意義,更是直接避開了 "100" 版本號。可謂是一步到位地實現了 “既要又要還要” 的需求。 因此,在 2023 年 3 月 20 日,curl 25 歲生日當天,Daniel 將會正式發布 curl 8.0.0。這將會是 curl 23 年來首次升級主版本號。不過正如上文所解釋,此次升級主版本號與功能變化無關,也不會進行特別的慶祝??偠灾@個升級和常規的并無二致,只是重置了次版本號,并升級主版本號。在常規的 curl 發布周期中,通常是是每隔 8 周在周三發布一次新版本。然而 2023 年 3 月 20 日是星期一。因此,curl 8.0.0 的發布時間會有所調整,curl 作者計劃在發布 curl 8 之后再調整回常規的發布時間。 審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7608

    瀏覽量

    137151
  • 代碼
    +關注

    關注

    30

    文章

    4803

    瀏覽量

    68753

原文標題:curl 作者:不考慮其他語言重構,計劃升級 C 語言標準、明年發布 curl 8

文章出處:【微信號:CPP開發者,微信公眾號:CPP開發者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    EE-128:C語言中的DSP:C調用匯編類成員函數

    電子發燒友網站提供《EE-128:C語言中的DSP:C調用匯編類成員函數.pdf》資料免費下載
    發表于 01-07 13:48 ?0次下載
    EE-128:<b class='flag-5'>C</b><b class='flag-5'>語言</b>中的DSP:<b class='flag-5'>從</b><b class='flag-5'>C</b>調用匯編類成員函數

    如何使用 cURL 測試 HTTP 協議

    。以下是如何使用cURL測試HTTP協議的詳細步驟和示例。 1. 安裝cURL 在大多數Linux發行版和MacOS中,cURL已經預裝。如果你使用的是Windows,可以
    的頭像 發表于 12-30 09:26 ?181次閱讀

    TI C2000系列重大更新!首次加入NPU,內核升級到64位!

    電子發燒友網報道(文/黃晶晶)1994年推出第一顆TMS320C10處理器開始,C2000 DSP已走過了30年的輝煌歷程。期間C2000系列不斷迭代
    的頭像 發表于 12-05 11:52 ?1797次閱讀
    TI <b class='flag-5'>C</b>2000系列重大更新!首次加入NPU,內核<b class='flag-5'>升級到</b>64位!

    技術干貨驛站 ▏深入理解C語言:掌握C語言條件判斷,ifswitch的應用

    在編程中,條件判斷語句是控制程序流程的核心元素之一。它們使得程序能夠根據不同的輸入和狀態,做出相應的決策。特別是在C語言中,條件判斷語句的使用極為廣泛,涵蓋了從簡單的if語句更復雜的switch
    的頭像 發表于 11-09 01:10 ?385次閱讀
    技術干貨驛站 ▏深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:掌握<b class='flag-5'>C</b><b class='flag-5'>語言</b>條件判斷,<b class='flag-5'>從</b>if<b class='flag-5'>到</b>switch的應用

    C語言指針學習筆記

    本文底層內存分析,徹底讓讀者明白C語言指針的本質。
    的頭像 發表于 11-05 17:40 ?265次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>指針學習筆記

    ADS7813升級到ADS8513

    電子發燒友網站提供《ADS7813升級到ADS8513.pdf》資料免費下載
    發表于 10-21 09:59 ?0次下載
    <b class='flag-5'>從</b>ADS7813<b class='flag-5'>升級到</b>ADS8513

    JESD204B升級到JESD204C時的系統設計注意事項

    電子發燒友網站提供《JESD204B升級到JESD204C時的系統設計注意事項.pdf》資料免費下載
    發表于 09-21 10:19 ?3次下載
    <b class='flag-5'>從</b>JESD204B<b class='flag-5'>升級到</b>JESD204<b class='flag-5'>C</b>時的系統設計注意事項

    Non-OS SDK1.3.0升級到1.4.0后,AT CWLAP命令無法再找到我的AP,為什么?

    Non-OS SDK1.3.0升級到1.4.0(AT版本0.40升級到0.50)后,AT CWLAP命令無法再找到我的AP。它仍然會找
    發表于 07-17 06:00

    OTA升級user2.bin ota升級到user1.bin失敗了的原因?

    使用NONOS SDK 2.0user1.bin ota升級到user2.bin成功,反過來就會失敗,下面是log: system_upgrade_start upgrade_connect
    發表于 07-11 08:00

    如何stm32f207的以太網庫中lwip1.3.2升級到1.4.1?

    如何stm32f207的以太網庫中lwip1.3.2升級到1.4.1
    發表于 05-17 08:04

    STVD是不是不支持C99?

    內容如標題所示,麻煩有懂的朋友告訴下我,這個問題花費我很多時間了。 不知道STVD是不是不支持C99??
    發表于 05-16 08:04

    STM32CubeMX版本升級由6.2.1升級到6.3.0后原工程重新編譯code文件變大什么原因?

    STM32CubeMX版本升級由6.2.1升級到6.3.0后原工程重新編譯code文件變大什么原因
    發表于 04-02 07:31

    c語言,c++,java,python區別

    C語言C++、Java和Python是四種常見的編程語言,各有優點和特點。 C語言
    的頭像 發表于 02-05 14:11 ?2463次閱讀

    vb語言c++語言的區別

    VB語言C++語言是兩種不同的編程語言,雖然它們都屬于高級編程語言,但在設計和用途上有很多區別。下面
    的頭像 發表于 02-01 10:20 ?2390次閱讀

    C++在Linux內核開發中爭議成熟

    Linux 內核郵件列表中一篇已有六年歷史的老帖近日再次引發激烈討論 —— 主題是建議 Linux 內核的開發語言 C 轉換為更現代的 C
    的頭像 發表于 01-31 14:11 ?650次閱讀
    <b class='flag-5'>C</b>++在Linux內核開發中<b class='flag-5'>從</b>爭議<b class='flag-5'>到</b>成熟
    主站蜘蛛池模板: younv 学生国产在线视频| 日本成熟bbxxxxxxxx| 97色伦图片7778久久| 色一情一乱一伦一区二区三区 | 最近日本MV字幕免费观看视频 | 日韩视频在线观看| 快播在线电影网站| 国产婷婷午夜无码A片| www免费看.男人的天堂| 在线 | 果冻国产传媒61国产免费| 色情内射少妇兽交| 欧美含羞草免费观看全部完| 久久九九有精品国产23百花影院| 国产成人v视频在线观看| 777黄色片| 伊人久久综合成人亚洲| 午夜免费小视频| 三色午夜秀| 欧洲另类一二三四区| 免费看毛片网| 快播h动漫网站| 久久精品美女久久| 好男人社区| 狠狠啪 日日啪| 国产在线视频在线观看| 国产精品嫩草影视在线观看| 成人国产三级在线播放| aaa级黄影片| av天堂电影网在线观看| 91蜜桃视频| 91夫妻交友论坛| 97无码人妻精品1国产精东影业| 中国老太60old mantv| 亚洲欧美日韩精品久久奇米色影视| 视频在线免费观看| 少妇连续高潮抽搐痉挛昏厥| 日操夜操天天操| 日韩人妻少妇一区二区三区| 人人超碰97caoporen国产| 琪琪伦伦影院理论片| 欧美日韩精品一区二区三区四区|