XML de structure C et C struct XML

J'aime faire de mon côté serveur de la programmation en C, mais le besoin d'inter-opérer avec du XML.

Ce que j'ai besoin d'écrire est une fonction qui, étant donné une structure C, ou de la structure imbriquée, et une autre structure (ou de structures imbriquées) qui décrit les éléments dans la structure C, crache, comme le XML. Et une autre fonction qui lit le XML, vérifie qu'il correspond à la description de la C structures, et remplit la C structures.

Je suis tout à fait certain de ce qui a été fait de nombreuses fois avant, mais il y a tellement d'autres info à propos de XML que je ne suis pas du tout avoir la chance de composer une Google requête qui ne retourne pas de beaucoup de sans rapport avec des trucs.

Je ne suis pas à la recherche de la bibliothèque, à seulement quelques centaines de lignes de code C pour parser le XML.

D'accord que C est pas le bon choix pour une toute nouvelle application web, mais que faire si il a une solide base de code? Nous n'avons pas toujours le luxe de repartir, même si le démarrage de plus serait rendre les choses plus facile dans le long terme.
Parce que parfois, mes trucs hits de la page d'accueil des sites comme digg.com et je ne suis pas vraiment envie de dépenser beaucoup sur puissant d'hébergement. Il a aussi vraiment vraiment la coupe vers le bas sur les dépendances, ce qui le rend bon quand quelqu'un licences le code (ce qui arrive aussi, de temps à autre). Mais il est convenu, - chaque fois que vous commencez à appeler malloc() beaucoup, C est pas la bonne langue. C'est pourquoi en général je faire de mes chaînes de caractères de longueur fixe et d'éviter de malloc.
Je suppose qu'il n'y a pas vraiment quelque chose de facilement disponibles que je peux utiliser, j'ai donc écrit un simple analyseur XML dans C. Son n'est assez bon pour mon besoin, mais c'est aussi seulement à 350 lignes de code C.
Écrire un parser XML en C??? Très étrange idée. Il y a déjà plusieurs très bons. Voir stackoverflow.com/questions/399704/xml-parser-for-c
Je n'étais pas prêt à inclure un grand nombre de dépendances et de bibliothèques qui devrait plus que doubler la taille de mon projet.

OriginalL'auteur Matthias Wandel | 2009-05-08