pré-processador cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · pré-processador c ....
TRANSCRIPT
![Page 1: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/1.jpg)
Pré-Processador C
![Page 2: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/2.jpg)
Introdução • Um programa em C é transformado em código
objeto em duas etapas: • uma de PRE-PROCESSAMENTO e a outra de
COMPILAÇÃO propriamente dita. • Na primeira etapa, as DIRETIVAS de PRE-
PROCESSAMENTO são convertidas em código C; na segunda etapa, o código C resultante é compilado.
2
![Page 3: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/3.jpg)
Diretivas
3
![Page 4: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/4.jpg)
4
![Page 5: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/5.jpg)
Include - exemplo 1. /* main.c **/
2. #include <stdio.h> /* arquivos de cabeçalho padrão */
3. #include <stdlib.h>
4. #include "list.h" /* arquivos de cabeçalho do projeto */
5. #include "xcpt.h"
6. int main(int argc, char *argv[]) 7. { 8. ... 9. }
5
![Page 6: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/6.jpg)
#define
6
![Page 7: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/7.jpg)
#define
7
![Page 8: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/8.jpg)
#define
8
![Page 9: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/9.jpg)
#define
9
![Page 10: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/10.jpg)
#define exemplo 1. #define NULL_POINTER_XCPT "null pointer" 2. #define INDEX_OUT_OF_BOUNDS_XCPT "index out of bounds" 3. #define OVERFLOW_XCPT "overflow" 4. #define UNDERFLOW_XCPT "underflow" 5. #define ILLEGAL_ARGUMENT_XCPT "illegal argument"
10
![Page 11: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/11.jpg)
Diretivas Condicionais
11
![Page 12: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/12.jpg)
Diretivas Condicionais
12
![Page 13: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/13.jpg)
Diretivas Condicionais
13
![Page 14: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/14.jpg)
Exemplo
14
![Page 15: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/15.jpg)
#ifdef
15
![Page 16: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/16.jpg)
#ifdef exemplo 1. #ifndef FILENAME_H 2. #define FILENAME_H
3. ...
4. #endif
16
![Page 17: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/17.jpg)
#undef
17
![Page 18: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/18.jpg)
#line
18
![Page 19: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/19.jpg)
Macros Pré-definidas
19
![Page 20: Pré-Processador Cgeraldo/lp/7.pre_processador.pdf · 2017. 4. 16. · Pré-Processador C . Introdução • Um programa em C é transformado em código objeto em duas etapas: •](https://reader033.vdocuments.mx/reader033/viewer/2022060713/6079948f72e24431e37c9e92/html5/thumbnails/20.jpg)
#pragma
20