From ca72d61e72b926a69c6272f367fecf44024a83f2 Mon Sep 17 00:00:00 2001 From: Armando Luiz Nicolini Delgado <nicolui@inf.ufpr.br> Date: Fri, 27 Oct 2023 08:59:25 -0300 Subject: [PATCH] =?UTF-8?q?/*=20Altera=C3=A7=C3=A3o=20na=20defini=C3=A7?= =?UTF-8?q?=C3=A3o=20de=20macro=20'isPot2'=20*/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/utils.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/utils/utils.h b/utils/utils.h index e2711bd..e964a70 100644 --- a/utils/utils.h +++ b/utils/utils.h @@ -5,7 +5,7 @@ #include <time.h> #include <sys/time.h> -// Valor absoluto de um número. Alternativa ao uso da função 'fabs()' +// Valor absoluto de um número real. Alternativa ao uso da função 'fabs()' #define ABS(num) ((num) < 0.0 ? -(num) : (num)) // real_t: tipo usado para representar valores em ponto flutuante @@ -23,11 +23,12 @@ typedef double rtime_t; #define ALIGN_16 __attribute__((aligned(16))) #define ALIGN_8 __attribute__((aligned(8))) -// Número máximo de dígitos em um número -#define numDigits(n) 6 // ( (int) log10(n) + 1 ) +// Número máximo de dígitos em um número inteiro +#define numDigits(n) 6 // ( n ? (int) log10(ABS(n)) + 1 : 1 ) -// Macro para verificar de valor 'n' é potência de 2 ou não -#define isPot2(n) (n && !(n & (n - 1))) +// Macro para verificar de valor 'n' é potência de 2 ou não. +// 'n' DEVE ser positivo e não-nulo +#define isPot2(n) (!(n & (n - 1))) // #define isPot2(n) (n && !(n & (n - 1))) // Funções rtime_t timestamp(void); -- GitLab