VxWorks上lstLib链表函数库的使用

原创 2018年04月16日 13:45:27

VxWorks上lstLib定义链表操作的结构和函数,灵活使用会给编程带来很大方便
下面是一个例子,展示了LIST和NODE结构的定义,以及create,add和next方法

#include<vxworks.h>
#include<lstLib.h>

typedef struct cmdData
{
    NODE    node;
    UINT32  cmd;
    UINT32  cmdIdx;
}cmdDATA;


LIST cmdList;
cmdDATA *pCmd=NULL;

void createCmdList(void)
{
    int i=0;
    lstInit(&cmdList);
    for(i=0;i<20;i++)
    {
        pCmd=(cmdDATA *)calloc(1,sizeof(cmdDATA));
        pCmd->cmd=i+1;
        pCmd->cmdIdx=i;
        lstAdd(&cmdList,(NODE *)pCmd);
    }
}


void dumpCmdList(void)
{
    int count=0;
    cmdDATA *pCmd=NULL;
    for(pCmd=(cmdDATA *)lstFirst(&cmdList);
            pCmd!=NULL;
            pCmd=lstNext((NODE *)pCmd))
    {
        count++;
        printf("cmd=0x%4x,cmdId=0x%04x\n",pCmd->cmd,pCmd->cmdIdx);
    }
}

运行结果
这里写图片描述

vxWorks的双向链表示例

vxWorks的链表是双向链表,适用于传递大量数据,需要快速访问的情况的数据结构,下面是示例代码: //双向链表的测试例子 #include #include #include typede...
  • dijkstar
  • dijkstar
  • 2016-02-08 19:57:25
  • 770

VxWorks下使用双向链表lstLib的小例子

#include #include #include typedef struct _Queue {  NODE * next;  NODE * prev;  int ag...
  • zyboy2000
  • zyboy2000
  • 2015-09-24 15:49:35
  • 1285

链表常用操作API函数示例

  • 2012年04月30日 00:05
  • 263KB
  • 下载

在虚拟机上使用vxworks 6.7成功了

经过多翻努力,终于在virtual box, vmware中使用 vxworks 6.7成功了。发一图纪念一下。...
  • FocusOnACE
  • FocusOnACE
  • 2010-07-07 11:27:00
  • 5037

vxworks如何编译.a库

VxWorks下也有ar命令,即arXXX:XXX代表你的BSP,如ar386, arpentium等。 下面举个例子   n个.o文件生成一个.a文件, 或者把.o文件加到.a文件中   如果...
  • qingfengtsing
  • qingfengtsing
  • 2011-11-23 11:12:37
  • 2213

VxWorks 基本启动方式

VxWorks 基本启动方式     按VxWorks内核的下载形式,VxWorks启动总体上分为两种方式:下载型和ROM 型。     @下载型启动方式:bootrom+VxWorks。此时boot...
  • mao0514
  • mao0514
  • 2014-03-14 08:46:53
  • 1539

在虚拟机上跑vxworks的总结

我的虚拟机环境:VMware® Workstation,7.1.4 build-385536 Tornado2.2.1,即vxworks5.5.1版本 其中文章中用到的文件下载处:http:/...
  • dijkstar
  • dijkstar
  • 2012-06-17 00:07:07
  • 11853

x86上vxworks启动分析

转载地址:http://bbs.2beanet.com/vxworks-f10/vxworks-t3385.html        VxWorks的引导程序叫VxLd,由Tornado工具vxsys...
  • pengrui18
  • pengrui18
  • 2012-12-01 22:12:48
  • 3679

在VMware10下安装VxWorks6.6虚拟机教程(上篇——准备环节)

1、先期准备 a) 开发环境 VxWorks6.6 for pentium 安装包(安装了workbench3.0,这很容易找到,在workbench的安装路径下\vxworks-6.6\target...
  • kulala082
  • kulala082
  • 2016-12-26 16:47:04
  • 2568

vxworks中 ftp .out文件的动态加载

今天试了一下ftp .out文件然后动态加载,一开始之间loadModule ftp函数返回的fd,但一直load失败没有办法,最后我怀疑load超时,先用memDrv中转了一下,生成新的fd,这个f...
  • del_c_sharp
  • del_c_sharp
  • 2004-10-04 15:22:00
  • 1498
收藏助手
不良信息举报
您举报文章:VxWorks上lstLib链表函数库的使用
举报原因:
原因补充:

(最多只允许输入30个字)