"string *monTableau[5];"
Un tableau de 5 pointeurs de string.
"Quelles sont les différences entre la compilation pour Windows et Linux? Le C et C++ sont sensés être multi-plate-forme non?"
Ce langage n'est pas de l'interprété mais compilé. Ce qui est généré par le compilateur est un binaire exécutable directement sans passer par moulte interpreteurs. Le binaire dépend cependant de la plateforme pour laquelle il a été compilée.
Le langage peut-être utiliser sur toute plateforme ayant un compilateur C/C++. Aucun problème la dessus. Les API, cependant, diffères.
"-Et qu'en bonus cette DLL puisse être compatible Windows/Linux (c'est beau de rêver

)?"
Au niveau binaire, non.
C++ (@++)