SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: © Jonathan © en Viernes 2 de Mayo de 2003, 01:30
-
Hola, tengo una confucion, duda y de todo un poco mas, todo eso se debe a lo siguiente:
#IF, #ELSE, ENDIF, etc...
Quisiera saber para que me puede servir eso.... en un libro lei que servian para compilar un programa de diferente forma dependiendo de los datos que se encuentren entre estas palabras, pero no entiendo para que quisiera hacer algo asi, si supuestamente vas a compilar algo que quieres y ya esta hecho como pueden cambiar los datos
Estoy mareado .... Perdon por toda la confucion que estoy causando, y espero alguna respuesta hacerca del tema...Gracias. Saludos :think: :think:
-
Pues tiene muchas ventajas. Que yo haya aprovechado:
- Aumenta rendimiento.
- Elimina código de depuración.
- Permite código multiplataforma.
Por ejemplo, si quieres que tu programa borre la pantalla en varios sistemas operativos:
#ifdef _unix
system("clear");
#endif
#ifdef WIN32
system("cls");
#endif
-
También, el uso de las condicionales del precompilador es para dar portabilidad a los programas. Por ejemplo, tu haces un programa de hace uso del juego de instrucciones del procesador Pentium 4, las cuales no correran en un procesador de menor caracteristica. Así cuando vayas a compilar en un procesador de menor carateristica no tienes que modificar nada. Esto es ideal para los programas que se ponen públicos donde cada quién debera compilarlo en máquinas distintas. Ese es uno de sus usos mas importantes.
Gmantil
-
Tambien lo puedes usar cuando quieres que algo suceda solo cuando el programa es ejecutado y no cuando se este corriendo paso por paso , haciendo debug, ejemplo del djgpp...
#include<stdio.h>
#include<time.h>
int main()
{
int x, y, count=0;
#ifndef DEBUG
srand(time);
#endif
while(count <= 50)
{
x = rand()%1025;
y = rand()%769;
dibuja_pelota(x,y);
count++;
}
}
En este ejemplo se necesita que las pelotas aperezcan aleatoriamente ,es decir siempre en lugares diferentes, para ello se siembra una semilla aleatoria con srand(time()), esto resulta muy util en el programa, per si estas corriendo el programa paso a paso para hacer seguimiento del dibujo de la pelota, esto seria un inconveniente ya que cada vez que lo ejecutes aparecerian en lugares diferentes, entonces para evitarlo, le decimos al compilador que solo ejecute srand(time()); cuando se ejecute el programa normalmente, màs no cuando se este haciendo DEBUG.
Espero que este ejemplo tambien haya sido claro para ti.
Juank
-
Hola amigos.... Muachas gracias a todos ustedes por haberme ayudado a eliminar esa duda, ahora tengo bien claras todas las utilidades que se le pueden dar a esas funciones que antes fueron dudas....Gracias...Saludos :gracias: