[ LUGOS-PROG ] #define in (...)

Rok Papež rok.papez at kiss.uni-lj.si
Thu May 31 09:27:38 CEST 2001


Živjo Goran :-).

On Thursday 31 May 2001 09:41, Goran Bervar wrote:

> Svetujem ti: poglej si man strani za preprocesor. V bistvu je precej močna
> reč glede na to da je "pre-".

Se nisem zavedal, da obstaja. 
S katerim ukazom jih lahko priklicem ?
man ?????????

> Odgovor na tvoje vprašanje:
>
> #if DEBUG
>    printf_debug(level, ...)  if(debug>level) printf(...)
> #else
>    printf_debug(levle, ...)
> #endif
>
> mora delati. 

Ne deluje... glej spodnji primer.
#define sicer "..." lepo brez tezav pozre, a
potem ne zna pravilno posredovati parametrov
naprej pravi funkciji.

a.h
------------------
#define DEBUG
#ifdef DEBUG
#define debug_printf(level, ... ) printf(...)
#else
#define debug_printf(level, ... ) ;
#endif

a.c
------------------
#include <stdio.h>
#include <stdlib.h>
#include "a.h"

int main() {
  debug_printf(1,"Test! %s\n","yada");
  return 0;
}

********************************************
[rok at strader rok]$ gcc a.c
a.c: In function `main':
a.c:6: parse error before `...'

[rok at strader rok]$ gcc -E a.c
int main() {
  printf( ... );
  return 0;
}

-- 
best regards,
Rok Papež.



More information about the lugos-prog mailing list