Traduction du C vers Ada - Divers - Programmation
Marsh Posté le 11-07-2012 à 23:24:24
<< est le décalage de bit (>> dans le sens contraire) et & est le ET logique et | est le OU logique
et le \ sert a continuer la macro sur la ligne suivante
Marsh Posté le 13-07-2012 à 16:07:24
Bonjour,
Voilà ce que donne la fonction Ada de la macro Pm_Message :
Code :
|
Ce que je cherche, c'est un moyen de me passer de corps de paquetage, autrement dit, comment en faire une macro avec Ada. j'ai cherché un peu mais je crois bien que ce soit impossible.
Marsh Posté le 13-07-2012 à 16:38:35
Le preprocessor cpp est indépendant du langage utilisé.
Marsh Posté le 13-07-2012 à 16:55:28
Anonymouse a écrit : |
Ah, si tu me dis ça, c'est que j'ai une chance...
Par exemple ?
Marsh Posté le 13-07-2012 à 17:29:05
Un fichier macro.h
Code :
|
Un fichier qui n'est même pas du code : test.txt
Code :
|
La commande:
Code :
|
Le résultat prepro.txt
Code :
|
T'intègre la commande dans la chaine de compilation pour compiler le résultat issu du préprocesseur.
Marsh Posté le 13-07-2012 à 17:39:21
Anonymouse a écrit :
|
Mais merci pour l'exemple, merci beaucoup même.
Je crois finalement que ma version soit d'avantage portable.
Qu'en penses- tu ? Si je peux me permettre !
Marsh Posté le 14-07-2012 à 14:09:04
Si le "préprocessor cpp" est indépendant du langage, le corps de la macro lui ne l'est pas: le <<, >> & et | sont propre au langage et apparemment pas en ada?
Marsh Posté le 14-07-2012 à 14:17:00
Pour les décalages effectivement il faut utiliser les fonction du paquetage Interfaces.
Pour les "et" et les "ou" il y a respectivement les "and" et "or" qui permettent de faire des opération logique sur des modulo.
Marsh Posté le 11-07-2012 à 21:45:13
Bonjour,
Je voudrais traduire ceci :
Avec Ada.
Deux chose : je ne connais pas la signification de ces macros et donc, je sais encore moins comment le traduire.
Peut-être qu'en répondant au premier problème, je résoudrait le second.
Je e suis pas de la partie C, c'est pourquoi, je traduit vers Ada.
Merci pour vos réponses.