Inne działy

 

 

Instrukcje warunkowe

 

Preprocesor zawiera również instrukcje warunkowe, pozwalające na wybór tego co ma zostać skompilowane w zależności od tego, czy stała jest zdefiniowana lub jaką ma wartość:


#if #elif #else #endif


Te instrukcje uzależniają kompilacje od warunków. Ich działanie jest podobne do instrukcji warunkowych w samym języku C. I tak:

 

  • #if wprowadza warunek, który jeśli nie jest prawdziwy powoduje pominięcie kompilowania kodu, aż do napotkania jednej z poniższych instrukcji.
  • #else spowoduje skompilowanie kodu jeżeli warunek za #if jest nieprawdziwy, aż do napotkania któregoś z poniższych instrukcji.
  • #elif wprowadza nowy warunek, który będzie sprawdzony jeżeli poprzedni był nieprawdziwy. Stanowi połączenie instrukcji #if i #else.
  • #endif zamyka blok ostatniej instrukcji warunkowej.

Przykład:

#if INSTRUKCJE == 2
printf ("Podaj liczbę z przedziału 10 do 0\n"); /*1*/
#elif INSTRUKCJE == 1
printf ("Podaj liczbę: "); /*2*/
#else
printf ("Podaj parametr: "); /*3*/
#endif
scanf ("%d\n", &liczba);/*4*/

  • wiersz nr 1 zostanie skompilowany jeżeli stała INSTRUKCJE będzie równa 2
  • wiersz nr 2 zostanie skompilowany, gdy INSTRUKCJE będzie równa 1
  • wiersz nr 3 zostanie skompilowany w pozostałych wypadkach
  • wiersz nr 4 będzie kompilowany zawsze

#ifdef #ifndef #else #endif


Te instrukcje warunkują kompilację od tego, czy odpowiednia stała została zdefiniowana.

 

  • #ifdef spowoduje, że kompilator skompiluje poniższy kod tylko gdy została zdefiniowana odpowiednia stała.
  • #ifndef ma odwrotne działanie do#ifdef, a mianowicie brak definicji odpowiedniej stałej umożliwia kompilacje poniższego kodu.
  • #else,#endif mają identyczne zastosowanie jak te z powyższejgrupy

Przykład:


#define INFO /*definicja stałej INFO*/
#ifdef INFO
printf ("Twórcą tego programu jest Jan Kowalski\n");/*1*/
#endif
#ifndef INFO
printf ("Twórcą tego programu jest znany programista\n");/*2*/
#endif


To czy dowiemy się kto jest twórcą tego programu zależy czy instrukcja definiująca stałą INFO będzie istnieć. W powyższym przypadku na ekranie powinno się wyświetlić:


Twórcą tego programu jest Jan Kowalski

 

 

Zobacz nasze wszystkie kursy

WWW


HTML
HTML - Znaczniki
CSS - Tutorial
CSS - Selektory
PHP
JavaScript

XML

XSLT

Bazy danych


SQL
SQLite
MySQL
PostgreSQL

 

 

Programowanie


C
C++
C#
Java
VisualBasic
Python

Linux


Podstawy Linuxa
Bash
Linuks artykuły

Windows


Excel funkcje
Windows wskazówki
Outlook

Pozotałe działy


Programy
Rozrywka

 

 

 

This email address is being protected from spambots. You need JavaScript enabled to view it.