Likely, you need to be aware there are 2 kinds of ways to parse an XML file; DOM or SAX
DOM (Document Object Model) parsers usually create a "tree" in memory as they read the contents of the XML, thus, they are memory intensive. Then when the parsing is done, you can retrieve the data from the already present buffer (tree) in memory.
Sax (Simple API for XML) parsers work by means of callbacks, i.e you register event handlers, and then, as the XML is being read, your function gets called, so, you only use the required memory, and retrieve only the elements/attributes you need and not the whole XML tree.
TinyXML is a DOM parser. Xerces-C is both SAX and DOM, and its more complex but has more features.
Theres another good one I've used with mingw (so it should work flawlessly with code::blocks provided you use that compiler suite too) is expat, which follows a SAX approach
http://expat.sourceforge.net/