Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Programowanie webowe Algorytmy i podstawy informatyki

Słowa kluczowe: const w języku C

W języku C, aby dołączyć do programu plik nagłówkowy, np. stdio.h, należy użyć

A.
#CONST
B.
#include
C.
static
D.
const
W języku C do dołączania plików nagłówkowych służy dyrektywa preprocesora #include. To właśnie jej używa się na początku pliku źródłowego, np. #include <stdio.h>, gdy program ma korzystać z funkcji wejścia i wyjścia takich jak printf, scanf, getchar czy putchar. Ważne jest to, że #include nie jest zwykłą instrukcją języka C wykonywaną w czasie działania programu, tylko poleceniem dla preprocesora, czyli etapu wykonywanego przed właściwą kompilacją. Preprocesor podstawia zawartość wskazanego nagłówka albo informuje kompilator, jakie deklaracje funkcji i typów są dostępne. W praktyce bez #include <stdio.h> kompilator może nie znać prototypu funkcji printf, co prowadzi do ostrzeżeń lub błędów, zależnie od standardu i ustawień kompilacji. Dobra praktyka jest taka, żeby dołączać tylko te nagłówki, które faktycznie są potrzebne, bo poprawia to czytelność kodu i skraca czas budowania większych projektów. Moim zdaniem to jedna z tych rzeczy w C, które warto zapamiętać od razu, bo pojawia się prawie w każdym prostym programie.
W tym pytaniu chodzi o mechanizm dołączania plików nagłówkowych w języku C, a nie o deklarowanie zmiennych ani zarządzanie pamięcią. Plik nagłówkowy, taki jak stdio.h, zawiera deklaracje funkcji, makra, definicje typów i inne informacje potrzebne kompilatorowi, żeby poprawnie sprawdzić kod źródłowy. Do tego celu używa się dyrektywy preprocesora #include, zapisanej zwykle w formie #include <stdio.h> dla nagłówków standardowych albo #include "plik.h" dla własnych nagłówków projektu. Słowo static ma zupełnie inne znaczenie. W C może ograniczać widoczność funkcji lub zmiennej do danego pliku źródłowego, a przy zmiennych lokalnych powoduje zachowanie wartości między wywołaniami funkcji. Nie ma ono nic wspólnego z pobieraniem zawartości pliku nagłówkowego. Podobnie const oznacza, że dana wartość nie powinna być modyfikowana po inicjalizacji, np. const int max = 10;. To przydatne dla bezpieczeństwa kodu i czytelności, ale nie uruchamia preprocesora. Zapis #CONST wygląda trochę jak dyrektywa, bo zaczyna się od znaku #, i tu łatwo się pomylić, ale w standardowym C nie jest to poprawna dyrektywa służąca do dołączania plików. Typowy błąd myślowy polega na kojarzeniu znaku # z dowolnym poleceniem specjalnym albo myleniu stałych z nagłówkami. W praktycznym programowaniu warto rozróżniać etapy: preprocesor obsługuje m.in. #include i #define, a kompilator analizuje już właściwe konstrukcje języka, takie jak static czy const.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.