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

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

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

3天內不再提示

怎么用C+JS結構來處理JSON數據?

汽車電子技術 ? 來源:IOT物聯網小鎮 ? 作者:船長老四 ? 2023-02-14 13:46 ? 次閱讀

【面對的問題】

物聯網產品的開發過程中,對JSON格式的數據處理是一個強需求,例如亞馬遜的 AWS IOT平臺,設備與后臺之間的通訊數據都是JSON格式,先瞄一眼大概的樣子:

圖片

這是一個真實產品的通訊數據,設備端的代碼C代碼中利用cJSON這個開源工具來完成JSON字符的解析和組裝工作。代碼我這里就不貼了,解析函數很長,要滾動好多次鼠標滑輪。而且一不注意釋放資源就會發生內存泄漏!



那么,是否有更好的方式來解決這個問題呢?

答案就是這篇文章介紹的duktape引擎!

【Duktape簡介】

這里只是簡單介紹下duktape,詳細的介紹大家自己去googleDuktape 是一個嵌入式 Javascript引擎,專注于可移植性和空間占用。

易于集成到C/C++項目中,使用API實現C代碼與JS代碼的雙向調用。

【代碼說明】

1.文件說明

圖片

duktape.c:引擎主要C文件。

duktape.h:引擎頭文件。

main.c      :  main函數所在文件。

main.js :Javascript文件,處理業務邏輯的代碼就放在這里。

Makefile   :  編譯腳本。

miniz.c     :有時候為了js代碼的保密,不能把js源碼放到最終產品中,需要壓縮和混淆;加載的時候再進行解壓。

2.核心步驟

圖片

*當C代碼中需要對JSON格式的字符串進行處理時,把JSON數據通過棧結構傳給JS程序,在JS程序中處理數據之后,把處理結果再返回給C程序中。
  • 在JS程序中,如果有些操作無法處理(例如:發送數據給串口),那么就調用C程序中的函數來處理。*

3.代碼說明

圖片

圖片

圖片

圖片

圖片

【測試環境】

  1. x86系統
    我是在 Ubuntu16.04 下測試的,使用系統自帶 gcc 編譯器。

2.嵌入式系統

只需要把編譯器換成對應的交叉編譯器即可。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 物聯網
    +關注

    關注

    2912

    文章

    44915

    瀏覽量

    376060
  • IOT
    IOT
    +關注

    關注

    187

    文章

    4230

    瀏覽量

    197396
  • JSON
    +關注

    關注

    0

    文章

    119

    瀏覽量

    7002
收藏 人收藏

    評論

    相關推薦

    JSON 數據格式

    )之間,記錄中實際的名稱 / 值對可以不一樣。JSON 是完全動態的,允許在 JSON 結構的中間改變表示數據的方式。在處理
    發表于 03-30 14:48

    C語言怎樣處理json文件?

    獲取到的JSON文件,怎樣通過C語言進行處理,因為單片機里面只能用C語言,有沒有C語言處理起來比
    發表于 11-01 06:16

    android使用JSON進行網絡數據交換

    本文將快速講解 JSON 格式,并通過代碼示例演示如何分別在客戶端和服務器端進行 JSON 格式數據處理。 什么是JSON
    發表于 12-04 11:51 ?0次下載

    數據庫中如何使用不同數據結構定義方式來處理連接運算

    在供暖收費系統的關系數據庫中 當兩個表連接運算的要求為元素和集合之間運算時 可以利用集合的冪運算進行簡化處理 討論了幾種不同數據結構定義方式來處理
    發表于 10-30 17:19 ?2次下載
    <b class='flag-5'>數據</b>庫中如何使用不同<b class='flag-5'>數據</b>表<b class='flag-5'>結構</b>定義方式<b class='flag-5'>來處理</b>連接運算

    如何使用Web3Js來處理區塊鏈斷開或重新啟動

    如果您的團隊在生產中使用Web3Js,那么您必須意識到在Web3Js中沒有內置的重新連接功能來處理區塊鏈斷開或重新啟動。因此,通常情況下,當連接下降時,需要重新啟動NodeJS服務以便再次連接到區塊鏈。這不是一個很實用的方法。
    發表于 03-03 09:25 ?2301次閱讀

    在Python中高效使用JSON的四種方法

    字典和列表是 Python的兩種數據類型,也是用來處理JSON的完美工具。本文將主要分享以下內容:如何載入、編寫JSON?如何在命令行上優化、校驗J
    的頭像 發表于 09-14 15:17 ?2762次閱讀
    在Python中高效使用<b class='flag-5'>JSON</b>的四種方法

    Danfo.js提供高性能、直觀易用的數據結構,支持結構數據的操作和處理

    Danfo.js 是個 JavaScript 開源庫,提供了高性能、直觀易用的數據結構,支持結構數據的操作和處理。Danfo.
    的頭像 發表于 09-23 18:21 ?5342次閱讀

    什么是JSON JSON的語法規則

    JSON數據交換格式 JSON(JavaScript Object Notation, JS 對象簡譜) 是一種輕量級的數據交換格式。它基于
    的頭像 發表于 08-25 15:40 ?2681次閱讀

    如何利用Dataloder來處理加載數據

    在Pytorch中,torch.utils.data中的Dataset與DataLoader是處理數據集的兩個函數,用來處理加載數據集。通常情況下,使用的關鍵在于構建dataset類。
    的頭像 發表于 02-24 10:42 ?618次閱讀
    如何利用Dataloder<b class='flag-5'>來處理</b>加載<b class='flag-5'>數據</b>集

    結構數據:ProtoBuf試用與JSON的比較

    XML、JSON 也可以用來存儲此類結構數據,但是使用ProtoBuf表示的數據能更加高效,并且將數據壓縮得更小。
    發表于 03-08 15:43 ?1909次閱讀

    支持的JSON數據選項介紹

    GPU 加速的 RAPID JSON 數據處理
    的頭像 發表于 07-05 16:30 ?459次閱讀

    如何利用Python和pandas來處理json數據

    了如何利用Python和pandas(Python的第三方庫)來處理json數據,主要內容包含: json數據簡介 常用
    的頭像 發表于 11-01 10:59 ?2496次閱讀
    如何利用Python和pandas<b class='flag-5'>來處理</b><b class='flag-5'>json</b><b class='flag-5'>數據</b>

    怎么js保存數據

    JS保存數據是Web開發中非常重要的一個功能,它能夠將用戶的輸入或者其他數據存儲在瀏覽器中,隨后方便地讀取和使用。在本文中,我們將討論不同的數據保存方式以及如何使用
    的頭像 發表于 11-27 16:10 ?1115次閱讀

    什么是JSON數據

    如何理解JSON數據庫?作為NoSQL數據庫的一種類型,JSON數據庫有哪些優勢呢?JSON
    的頭像 發表于 12-02 08:04 ?903次閱讀
    什么是<b class='flag-5'>JSON</b><b class='flag-5'>數據</b>庫

    JSON協議是什么,物聯網中的RTU中如何使用JSON協議和服務器交互

    語言。 JSON 是一種輕量級的數據交換格式,它基于 ECMAScript (w3c制定的js規范)的一個子集,采用完全獨立于編程語言的文本格式來存儲和表示
    的頭像 發表于 09-25 16:14 ?1030次閱讀
    <b class='flag-5'>JSON</b>協議是什么,物聯網中的RTU中如何使用<b class='flag-5'>JSON</b>協議和服務器交互
    主站蜘蛛池模板: 18禁黄无遮挡禁游戏在线下载 | 久久蜜视频 | 国产一在线精品一区在线观看 | 中文字幕a有搜索网站 | av无码在线日本天堂 | 探花口爆颜射乳交日韩 | 久久国产36精品色熟妇 | 小夫妻天天恶战 | 影音先锋影院中文无码 | 国产熟妇无码一区二 | 热久久国产欧美一区二区精品 | 国产精品.XX视频.XXTV | 久久99亚洲AV无码四区碰碰 | 久久免费资源福利资源站 | 亚洲在线v观看免费国 | 中文字幕在线观看亚洲视频 | 欧亚一卡二卡日本一卡二卡 | 中国农村妇女真实BBWBBWBBW | CHINESE熟女老女人HD视频 | 中文字幕一区二区三区在线观看 | 性色少妇AV蜜臀人妻无码 | 高清国产在线观看 | 啊灬啊灬啊灬快灬深高潮啦 | 美女脱得只剩皮肤 | 日韩丰满少妇无码内射 | 草莓视频在线观看免费观看高清 | 视频一区精品自拍亚洲 | 99久久就热视频精品草 | 男人插曲视频大全免费网站 | 久久国产视频网站 | adc影院欢迎您大驾光临入口 | 97人人看碰人免费公开视频 | 牛和人交videos欧美 | 偷拍自怕亚洲在线第7页 | 暖暖的视频完整视频免费韩国 | a在线观看视频 | 日本无码人妻丰满熟妇5G影院 | 欧美内射深插日本少妇 | 99久久婷婷国产麻豆精品电影 | 2022国产91精品久久久久久 | 飘雪在线观看免费完整版 |