From a984cf3f28d3a5935c84f96f6da3bc7bd39a9ff1 Mon Sep 17 00:00:00 2001 From: Pixel <> Date: Fri, 13 Apr 2001 12:03:09 +0000 Subject: Assembleur. --- lib/numbers.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'lib/numbers.c') diff --git a/lib/numbers.c b/lib/numbers.c index 8334dd4..9f032b5 100644 --- a/lib/numbers.c +++ b/lib/numbers.c @@ -1,11 +1,15 @@ #include "numbers.h" +/* Cette fonction lit un nombre. Elle va chercher absolument à traduire la chaîne passée en argument en un nombre. Si +ce nombre n'est pas valide, alors l'int valid est mis à faux. Cette fonction reconnais les nombres en décimaux, les nombres +en octal préfixés avec 0 et les nombres en hexadécimal préfixés avec 0x. */ + int char_to_number(char *st, int *valid) { int whattype = 0, result = 0; - + *valid = 0; - + if (*st == '0') { st++; if (*st == 'x') { @@ -18,7 +22,7 @@ int char_to_number(char *st, int *valid) return 0; } } - + while (*st) { switch (whattype) { case 0: @@ -52,7 +56,7 @@ int char_to_number(char *st, int *valid) } st++; } - + *valid = 1; return result; } -- cgit v1.2.3