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

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

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

3天內不再提示

可pop任意字節的隊列

冬至子 ? 來源:技術鋪子 ? 作者:chasen ? 2023-01-18 15:02 ? 次閱讀

前言

在一般的鏈表中,數據是存儲在node節點中的,每次pop出來的數據是以node為單位的。這篇文章,我們對一般的鏈表進行改進,可以pop任意字節的數據,也就是說,每次pop的數據數據是以任意字節為單位的,可以pop 10Byte,也可以500Byte,這種方法比較靈活。

原理

針對一般的鏈表,我們做的改進主要是在每個node中加了一個字段pos,用來標記這個node的data的下標。比如說這個node打data數據大小為10,它的pos就為0,這時候就表示這10個字節都可以用。然后可以pop 2個字節,這時候pos就成了2,表示還有8個字節可以用。

實現的話,我們可以定義這樣的結構體:

typedef struct Node
{
    int id;             //每個link的標識符
    int pos;            //記錄node數據的下標
    int size;           //記錄node數據的總大小
    int num;            //記錄link的node個數,僅頭結點使用
    char *addr;         //數據data
    struct Node *next;  //next node
} Node;

對于具體的原理實現,我們可以用一張圖片來清楚地說明一下:

2.jpg

例子

下面是一個完整的的代碼例子供參考,可以直接運行:

#include 
#include 
#include 
#include 
#include 


class PkgLink
{
public:
    PkgLink() {m_link_header.clear();}
    ~PkgLink() {}


    typedef struct Node
    {
        int id;
        int pos;
        int size;
        int num; //for head;
        char *addr;
        struct Node *next;
    } Node;


    std::vector

審核編輯:劉清

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

    關注

    5

    文章

    970

    瀏覽量

    50894
收藏 人收藏

    評論

    相關推薦

    SIMPLIS POP仿真分析

    要說POP (Periodic operating Point )仿真在Simplis里面算比較特殊的功能了,只有在Simplis模式下才可以使用POP 仿真。所以啟動POP仿真必須在Simplis模式下。
    的頭像 發表于 11-10 15:11 ?3062次閱讀
    SIMPLIS <b class='flag-5'>POP</b>仿真分析

    探索字節隊列的魔法:多類型支持、函數重載與線程安全

    探索字節隊列的魔法:多類型支持、函數重載與線程安全代碼難度指數:文章學習重點:參數宏的使用技巧一、引言在嵌入式系統和實時應用中,數據的傳輸和處理是至關重要的。字節隊列(ByteQueu
    的頭像 發表于 11-15 01:08 ?785次閱讀
    探索<b class='flag-5'>字節</b><b class='flag-5'>隊列</b>的魔法:多類型支持、函數重載與線程安全

    Freertos隊列項里的字節長度是否可以獲取?

    最近剛學Freertos, 看到可以獲取Freertos隊列長度,但是隊列項里的字節長度是否可以獲取? 因為項目中隊列中會存放不定長字節
    發表于 04-29 07:17

    【MiCOKit試用體驗】慶科MiCO系統篇(4)MiCO RTOS消息隊列

    , uint32_tnumber_of_messages );該函數為初始化一個消息隊列,參數1為指向要初始化的消息隊列的句柄指針;參數2為消息隊列的名稱,由用戶定義;參數3為將要進入隊列
    發表于 10-24 17:03

    keystoneII arm示例程序網卡中斷,請問隊列收到包后,如果暫時不從隊列pop包,是否可以在隊列這個級別清除中斷信號?

    描述:目前開發板示例程序網卡驅動中,接收用了queue-658,這個隊列的中斷信號直接給了中斷控制器,請問,如果隊列收到包后,如果暫時不從隊列pop包的話,是否可以在
    發表于 08-03 07:43

    利用變體隊列實現任意復雜數據集合傳遞(很方便)

    利用變體隊列實現任意復雜數據集合傳遞(很方便),大家可以看看。原創是來自@zhihuizhou 【labview我來告訴你】實現任何LabVIEW數據類型集合的簡潔方式。我在此基礎上加了一些,方便大家理解這樣的好處。
    發表于 02-11 15:39

    FreeRTOS消息隊列和RT-Thread消息隊列的使用注意事項介紹

    個數unsigned portBASE_TYPE uxItemSize ); // 單個消息最大字節uxQueueLength隊列能夠存儲的最大單元數目,即隊列深度。 uxItemSize隊列
    發表于 05-25 15:32

    簡單羅列幾種隊列管理邏輯電路

    的范圍比buffer深度大,則不需要額外的標號記錄空滿狀態。存在的問題,若buffer深度較大或隊列數量較多,隊列號和指針匹配邏輯會占用較多的資源。3 重力FIFO類似于排隊,從隊頭開始尋找輸出
    發表于 08-29 14:23

    什么是PoP

    什么是PoP  英文縮寫: PoP 中文譯名: 接入點 分  類: IP與多媒體
    發表于 02-23 09:41 ?1790次閱讀

    POP3協議和Base 64編碼原理

    POP3適用于C/S結構的脫機模型,是因特網電子郵件的第一個離線協議標準,Base 64是一種很常見的編碼規范,被設計用來將任意序列的8字節描述為一種不易被人直接識別的形式
    發表于 01-12 19:08 ?2166次閱讀
    <b class='flag-5'>POP</b>3協議和Base 64編碼原理

    AWorks軟件設計,郵箱、消息隊列和自旋鎖使用方法

    本文介紹了郵箱、消息隊列和自旋鎖的使用方法。信號量只能用于任務間的同步,不能傳遞更多的信息,為此,AWorks提供了郵箱和消息隊列服務,它們的主要區別在于支持的消息長度不同,在郵箱中,每條消息的長度固定為4字節,而在消息
    的頭像 發表于 06-13 09:13 ?1.3w次閱讀
    AWorks軟件設計,郵箱、消息<b class='flag-5'>隊列</b>和自旋鎖使用方法

    pop任意字節隊列代碼的優化

    因為這個功能是通過頭結點的鏈表的實現的,而在上分代碼中,使用者可以通過調用的到頭結點信息,然后使用者就可以對這個鏈表進行任意操作,這樣就很危險。
    的頭像 發表于 01-18 14:56 ?585次閱讀

    RTOS消息隊列的應用

    基于RTOS的應用中,通常使用隊列機制實現任務間的數據交互,一個應用程序可以有任意數量的消息隊列,每個消息隊列都有自己的用途。
    發表于 05-29 10:49 ?629次閱讀
    RTOS消息<b class='flag-5'>隊列</b>的應用

    FreeRTOS消息隊列介紹

    隊列是為了任務與任務、任務與中斷之間的通信而準備的,可以在任務與任務、任務與中斷之間傳遞消息,隊列中可以存儲有限的、大小固定的數據項目。任務與任務、任務與中斷之間要交流的數據保存在隊列中,叫做
    的頭像 發表于 07-06 16:58 ?803次閱讀
    FreeRTOS消息<b class='flag-5'>隊列</b>介紹

    MCU專屬隊列功能模塊之QueueForMcu應用

    當需要從隊列頭部獲取多個數據,但又不希望數據從隊列中刪除時,可以使用 Queue_Peek_Array 函數來實現,該函數的參數與返回值與 Queue_Pop_Array 完全相同。
    發表于 03-20 11:44 ?508次閱讀
    MCU專屬<b class='flag-5'>隊列</b>功能模塊之QueueForMcu應用
    主站蜘蛛池模板: 毛片网站视频| 青青草国产偷拍在线av| 欧美精品熟妇乱| 色综合伊人色综合网站下载| 亚洲欧美激情精品一区二区| 4480yy午夜私人影院| 国产成人小视频在线观看| 久久黄色小视频| 乳色吐息未增删樱花ED在线观看| 亚洲精品国产字幕久久vr| 99re 这里只有精品| 国产亚洲精品a在线观看app| 男男高H啪肉Np文多攻多一受| 探花口爆颜射乳交日韩| 最新高清无码专区| 国产精品资源在线观看网站 | 久久久无码精品亚洲日韩按摩| 日本68xxxxxxxxx老师| 亚洲欧美中文日韩视频| 成人免费观看国产高清| 久久国内精品| 无码一区二区三区| 99久久精品国产一区二区三区| 国产亚洲视频在线播放香蕉| 欧美熟妇VIVOE精品| 亚洲视频精品在线观看| 达达兔午夜一级毛片| 老司机午夜影院试看区| 新香蕉少妇视频网站| a级男女性高爱潮高清试看| 九九热精品免费观看| 色琪琪久久热在线| 99精品热视频30在线热视频| 狠狠色色综合网站| 偷窥自拍性综合图区| freevideoshd| 亚洲精品久久久久中文字幕二区 | 亚洲视频在线看| 国产AV无码一二三区视频| 免费的av不用播放器的| 亚洲天堂999|