🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #7347

Re: #define, y simplificar expresiones con #define

#7347
From: Recurrente
Date: Mon, 10 Mar 2003 08:56
56 lines
2535 bytes
Julián Albo wrote:
> Edu escribió:
> 
> 
>>Algo así que antes de compilar, el compilador sustituye, en el código todas
>>las constantes definidas con #define con el valor de la constante y luego
>>compila el código tal y como si hubieses escrito el valor de la constante en
>>lugar de la etiqueta.
> 
> 
> El preprocesador sustituye textualmente lo que hay en el #define, sin
> saber si lo que hay es una constante o no. El compilador se encuentra el
> texto sustituido y, si es una constante, lo simplifica a su valor.
> 
> Salu2

Eso es lo que quería saber. De manera que, si escribo
#define A 3
#define B 4
...
x=A*B;
...

el preprocesador me genera

x=4*3;

pero a la hora de generar codigo fuente, me genera
x=12; (en código fuente, claro),
con lo cual los #define me están aliviando algo el programa.


¿y esto pasa tambien para funciones de libm.a?
x=sin(A); por ejemplo....

Por cierto estuve echando un vistazo a cmix, y con dicho programa he 
conseguido que una rutina de interpolación 3D a la que tengo que llamar 
muchas veces me vaya un 13% más rápido. Jo y uno que piensa que ya no se 
puede optimizar más....:-)


Gracias!!!


Recurrente

-- 
"¿Un disco duro de 20 megas?  Ufff!!! Eso no lo llenas tú en la vida!!!!"
Anonimo vendedor de ordenadores (1990)
Technical Details
Message-ID: <3E6C535B.1090006@hotmail.com>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!newsmi-us.news.garr.it!NewsITBone-GARR!news.rediris.es!News.cica.es!""!not-for-mail
References: <3E687B9A.7050108@hotmail.com> <b4b6aq$eie$1@nsnmrro2-gest.nuria.telefonica-data.net> <3E6920A2.5515AC49@terra.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,5e4da054d3fd742e
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2003-03-10 01:01:08 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!newsmi-us.news.garr.it!NewsITBone-GARR!news.rediris.es!News.cica.es!""!not-for-mail
From: Recurrente <recurrente@hotmail.com>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: #define, y simplificar expresiones con #define
Date: Mon, 10 Mar 2003 09:56:59 +0100
Organization: C.I.C.A.
Lines: 57
Message-ID: <3E6C535B.1090006@hotmail.com>
References: <3E687B9A.7050108@hotmail.com> <b4b6aq$eie$1@nsnmrro2-gest.nuria.telefonica-data.net> <3E6920A2.5515AC49@terra.es>
NNTP-Posting-Host: eurus4.us.es
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: quoted-printable
X-Trace: mercurio.cica.es 1047286616 21599 193.147.162.98 (10 Mar 2003 08:56:56 GMT)
X-Complaints-To: news@cica.es
NNTP-Posting-Date: 10 Mar 2003 08:56:56 GMT
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.0) Gecko/20020529
X-Accept-Language: en-us, en