comme vous savez l'analyse lexicale est la première passe pour les applications orienté traitement (compilateurs,interpréteur,analyseur de requêtes..) et comme je viens de finir le premier chapitre de mon cours de compilation j'ai décidé d'implémenter mon propre analyseur lexicale du langage C ( et non pas de pseudo-pascal ) qui se trouve par centaine sur le site .
les tokens supportes sont les Symboles,Identificateurs (mots-clés inclus) , String (chaine de caractères commençant par " ou ') , nombres (entier,hex,floats) ,les prédécesseurs (#include,#ifdef...),les espaces , les comments (c/c++ style)...
chaque token est identifie par une instance de la structure token ou le contenu du token ainsi que sa taille et la ligne ou il se trouve sont stocke dans cette structure . le tous est gérés via une liste simplement chaines (voir main() ).
Le code a été testes sous UNIX(FreeBSD) et Windows(VS9) , j'ai inclus un petit build script pour unix ou cas ou.