Kurs programowania w C cz. 78

Nasza ocena:

5
Wyświetleń: 441
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Kurs programowania w C cz. 78 - strona 1

Fragment notatki:

94 ROZDZIAŁ 12. PREPROCESOR –  jeżeli kompilator jest zgodny ze standardem z 1999 makro ma wartość 199901L. Warto również wspomnieć o identyfikatorze func zdefiniowanym w standardzie C99, którego wartość to nazwa funkcji. Spróbujmy użyć tych makr w praktyce: #include  #if __STDC_VERSION__ = 199901L /* Jezeli mamy do dyspozycji identyfikator __func__ wykorzystajmy go. */ # define BUG(message) fprintf(stderr, "%s:%d: %s (w funkcji %s)\n", \ __FILE__, __LINE__, message, __func__) #else /* Jezeli __func__ nie ma no to trudno. */ # define BUG(message) fprintf(stderr, "%s:%d: %s\n", \ __FILE__, __LINE__, message) #endif int main(void) { printf("Program ABC, data kompilacji: %s %s\n", __DATE__, __TIME__); BUG("Przykladowy komunikat bledu"); return 0; } Efekt działania programu, gdy kompilowany jest kompilatorem C99: Program ABC, data kompilacji: Sep 1 2008 19:12:13 test.c:17: Przykladowy komunikat bledu (w funkcji main) Gdy kompilowany jest kompilatorem ANSI C: Program ABC, data kompilacji: Sep 1 2008 19:13:16 test.c:17: Przykladowy komunikat bledu ... zobacz całą notatkę



Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz