Inclusion de archvos condicional.

Iniciado por prometheus48, 2 Septiembre 2012, 20:24 PM

0 Miembros y 1 Visitante están viendo este tema.

prometheus48

Hola,

Quería incluir el archivo de cabacera de SDL si no se ha hecho antes. Osea, algo como:

#ifndef SDL
#include <SDL/SDL.h>
#endif

Pero el tema es que no se que hacer en el #ifndef . Osea, no se que poner, si SDL o SDL_H or algo parecido.

Gracias y saludos.
"Si tú tienes una manzana, y yo otra, y las intercambiamos, tu sigues teniendo una manzana, y yo sigo teniendo una manzana.
Pero, si tu tienes una idea, y yo otra, y nos las intercambiamos, tu tienes dos ideas, y yo tengo dos ideas"
The knowledge is free

Fire544

#1
Buenas !!! Mira lo que quieres es una compilacion condicional por lo que veo eeh, pero puedes hacer uso de las directivas #ifdef o #if, ten en cuenta que todas las directivas del preprocesador terminan con un #endif.


//Ejemplos: #ifdef
#define _SDL_

#ifdef _SDL_

//se incluye la lib a la compilacion si la constante _SDL_ esta definida antes !!

#include <sdl/sdl.h>

#endif


Nota: La directiva #ifdef es equivalente a usar #if define _SDL_

Tambien puedes usar la directiva #ifndef que a diferencia de #ifdef esta es equivalente a #if !define _SDL_


//ejemplo #ifndef

#ifndef _SDL_ //si no esta definida la constante entonces se cumple

#define _SDL_ //definimos constante
//incluimos cabecera o lib.h
#include <sdl/sdl.h>
//terminamos inclusion
#endif


Suerte !!! prometheus48  :laugh:
"Si enseñas a pezcar a un niño lo ayudas para toda la vida, si pezcas para alimentarlo lo ayudas por un momento".

prometheus48

Muchísimas gracias! Perdón por contestar tan tarde, no tengo escusas.

Saludos Fire544!
"Si tú tienes una manzana, y yo otra, y las intercambiamos, tu sigues teniendo una manzana, y yo sigo teniendo una manzana.
Pero, si tu tienes una idea, y yo otra, y nos las intercambiamos, tu tienes dos ideas, y yo tengo dos ideas"
The knowledge is free