Si ton code est trop long, sépare en plusieurs paires de fichiers (.c avec le code et .h avec les prototypes, structures, ...). Ton main.c n'a qu'à inclure les autres headers (seulement les headers) et appeler les fonctions.
1)
- Oui, tu peux migrer vers C++
- Non, ça passera à la compilation sans problèmes (mais tu pourras virer les typedef dans la définition des structures, par exemple)
- Non, je ne pense pas
- Bah oui, ... y'a rien de mal à ça
2)
- Si tu utilises les classes, c'est (un tout petit peu) plus lent ... mais ce n'est pas grave car tu gagnes énormément en lisibilité
3)
- Si tu utilises des APIs à tout bout de champ, non. Mais tu peux faire tes propres librairies multi-plateformes (dépendant de l'OS qui compile, les fonctions sont différentes, à cause des APIs par exemple)
---
VB.NET is good ... VB6 is better 