Darmowe Forum

C+++ => A Kuba powiedział => Wątek zaczęty przez: admin Grudzień 19, 2012, 08:23:42



Tytuł: Instrukcje preprocesora
Wiadomość wysłana przez: admin Grudzień 19, 2012, 08:23:42
Preprocesor to program przetwarzający kod źródłowy jeszcze przed rozpoczęciem kompilacji.
Instrukcje preprocesora nazywane są dyrektywami. Wszystkie dyrektywy preprocesora rozpoczynają się od znaku #. Znak # sygnalizuje, że nastąpi po nim dyrektywa preprocesora. Dyrektywy wstawiamy na samym początku kodu programu.
Przykładem dyrektywy jest #include , pozwalająca na dołączenie do kodu źródłowego kodu z innych plików źródłowych.


Inna dyrektywą jest dyrektywa #define, określająca stałe wartości dostępne w programie: #define adam 4321
od tej chwili identyfikator adam oznacza stałą o wartości 4321. Takie postępowanie ma niewątpliwe zalety, kolejne wersje programu przy zmianie stałej adam wymagają tylko zmiany wartości przy dyrektywie include.
Dyrektywa #define nakazuje preprocesorowi zastąpić każde wystąpienie ciągu znaków innym ciągiem znaków. Pierwszy , zastępowany ciąg znaków (adam) spełnia rolę makronazwy, drugi jest makrorozwinięciem (macro body).


Zadanie 1. Przykład deklaracji makroinstrukcji adam i suma.

#include <cstdlib>
#include <iostream>
#define adam 4321;
#define suma (23+2)
using namespace std;

int main(int argc, char *argv[])
{ cout<<suma;
cout<<adam;
    system("PAUSE");
    return EXIT_SUCCESS;
}


Makro instrukcja rozwijana przez preprocesor może działać podobnie do funkcji - pobierać argumenty i zwracać wartość uzyskaną w wyniku przetwarzania danych . Uwaga, ważną rolę spełniają nawiasy okrągłe !!!!!


Polityka cookies
Darmowe Fora | Darmowe Forum

polskiegpsts gangnh wataha-mgly mustangi olimp