怎么用定义好的数据结构来保存xml文档中的数据

如何用定义好的数据结构来保存xml文档中的数据
<root element>
<basic element>
 <device_info element>
  <name string>ws_ipc</name>
  <sw_version string>ws_1.0</sw_version>
  <hw_version string>ws_1.1</hw_version>
  <live_chan int>4</live_chan int>
 </device_info>
</basic>
<network element>
 <dhcp int>0</dhcp>
 <ip string>192.168.1.40</ip>
 <netmask string>255.255.255.0</netmask>
 <gateway string>192.168.1.1</gateway>
 <dns1 string>202.103.24.68</dns1>
 <dns2 string></dns2>
<advance element>
 <ddns element>
  <server string>ipcpddns.com</server>
  <userdomain string>test_zc</userdomain>
  <update_time int>1800</update_time>
 </ddns>
</advance>
</network>
</root>

怎么解析出来,我就是不会把每行对应的内容保存在一个结构体中,这是一个xmlnode,应该用链表和树来实现。求解
定义合适的数据结构 xml解析器

------解决方案--------------------
你要调用库的话我原来用过   mxml.h
具体函数看http://blog.csdn.net/bluesonic/article/details/3887143

------解决方案--------------------
先学会用*

然后去看*的代码,学习之



先学会去调用tinyxml的API函数

然后去学习tinyxml的代码,看它是如何实现的