> Tech > Opérations de type mathématique, logique et chaîne

Opérations de type mathématique, logique et chaîne

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Plusieurs macros m4 intégrées peuvent manipuler des entiers représentés comme des chaînes de chiffres. Cet exemple montre comment incrémenter la valeur numérique d’une macro varcount :

define(<<varcount>>,0)
define(<<varcount>>,incr(varcount))

On ne met généralement pas entre guillemets le nom d’une macro

Opérations de type mathématique, logique et chaîne

de comptage quand elle est utilisée comme argument d’une macro mathématique intégrée. Dans l’exemple précédent, la macro varcount est redéfinie avec la représentation de chaîne incr(0), c’est-à-dire 1. Par conséquent, tout appel ultérieur à varcount est remplacé par 1 également. La macro eval s’étend en une chaîne qui est la valeur d’une expression mathématique ou logique. Par exemple, dans la séquence

define(<<varcount>>,0)
eval(varcount+1)

la macro eval s’étend à 1. M4 fournit plusieurs macros intégrées pour la manipulation de chaînes, y compris len (string length = longueur de chaîne) et substr (substring = sous-chaîne).

Les macros peuvent être appelées récursivement et m4 reconnaît les macros intégrées pushdef et popdef pour pousser et faire surgir des définitions de macros sur une pile. Ces deux fonctions permettent d’écrire de petits programmes avec itération. Travailler avec des macros récursives est utile dans certains cas, mais il faut faire attention à éviter des macros incontrôlées.

Téléchargez cette ressource

Comment accélérer la transformation des environnements de travail ?

Comment accélérer la transformation des environnements de travail ?

Dans un monde professionnel en pleine mutation, la mobilité, l’efficacité énergétique, la sécurité et l’intelligence embarquée sont devenues des critères décisifs pour les équipements informatiques. Découvrez comment les nouveaux PC Microsoft Surface dotés des processeurs Snapdragon X Series s’imposent comme une réponse stratégique aux nouveaux enjeux IT.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010

A lire aussi sur le site

Revue Smart DSI

La Revue du Décideur IT