Spis treści Przedmowa
13
Wstęp
15
Część I
Programowanie niskiego poziomu w języku C
Wprowadzenie
19 21
1 Typy 1.1 Fundamentalne typy danych . . . . . . . . . . . . . . . . . . . . . . 1.2 Typy pochodne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Typy niekompletne . . . . . . . . . . . . . . . . . . . . . . . . . . .
23 23 25 25
2 Stałe 2.1 Stałe całkowitoliczbowe . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Stałe zmiennopozycyjne . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Stałe znakowe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Znaki przestankowe . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5 Stałe łańcuchowe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Stałe wyliczeniowe . . . . . . . . . . . . . . . . . . . . . . . . . . .
27 27 28 28 29 29 30
3 Zmienne i ich nazwy 3.1 Kwalifikatory typu . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Kwalifikatory miejsca . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Kombinacje kwalifikatorów . . . . . . . . . . . . . . . . . . . . . . . 3.4 Zakres ważności nazw zmiennych . . . . . . . . . . . . . . . . . . .
31 32 34 36 36
4 Operatory i wyrażenia 4.1 Wyrażenia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Podstawowe operatory arytmetyczne . . . . . . . . . . . . . . . . . 4.3 Operatory inkrementacji i dekrementacji . . . . . . . . . . . . . . . 4.4 Operatory relacyjne . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Operatory logiczne . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6 Operator przecinka . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.7 Operatory bitowe . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38 38 38 39 39 40 41 41