Curso de C

Lista de Exercícios

 Aula 7: Diretivas de Compilação

Clique aqui para acessar o Gabarito da Lista 7

Exercício 1:
Verifique o programa abaixo e tente identificar problemas que irão ocorrer em tempo de execução. (Você pode usar um debugger, ou colocar printf's para tentar ver os valores das variáveis).

#define max(A,B) ((A>B) ? (A):(B))
#define sqr(x) x*x

void main()
{
int a = 10 ,b = 50, minimo, maximo, quad;
minimo = min(a,b);
maximo = max(a++,b++);
quad = sqr(z+1);
}

Verifique o que acontece também se mudarmos a linha de declarações do programa

  int a = 10 ,b = 50, minimo, maximo, quad;

por

  float a = 10 ,b = 50, minimo, maximo, quad;
 

Exercício 2:
O que faz a macro a seguir?

# ifdef PRINT
# define WRITE(X) printf X
# else
# define WRITE(X)
# endif

Como ela poderia ser utilizada?

  Sumário

Dúvidas? Dê uma olhadinha em nosso FAQ

Perguntas para a lista do Curso de C
Curso de C do CPDEE/UFMG - 1996-1998