Sie sind auf Seite 1von 181

Invata C

Table of Contents
................................................................................................................................................................. 5
1. Generalitati asupra limbajului C ...................................................................................................... 6
1.1 Introducere............................................................................................................................... 6
1.2 Primele programe .................................................................................................................... 7
1.3 Meta-limbajul si setul de caractere ........................................................................................ 11
2. Unitati lexicale ale limbajului C .................................................................................................... 12
2.1 Indentificatori ........................................................................................................................ 12
2.2 Cuvinte cheie ......................................................................................................................... 12
2.3 Constante ............................................................................................................................... 13
2.4 Siruri ...................................................................................................................................... 16
2.5 Operatori................................................................................................................................ 17
2.6 Separatori............................................................................................................................... 17
3. Variabile ........................................................................................................................................ 19
3.1 Clase de memorie .................................................................................................................. 19
3.2 Tipuri de variabile ................................................................................................................. 22
3.3 Obiecte si valori-stanga ......................................................................................................... 25
3.4 Conversii de tip ..................................................................................................................... 25
4 Operatori si expresii ...................................................................................................................... 29
4.1 Expresii primare .................................................................................................................... 29
4.2 Operatori uniari ..................................................................................................................... 31
4.3 Operatori multiplicativi ......................................................................................................... 34
4.4 Operatori aditivi .................................................................................................................... 35
4.5 Operatori de deplasare ........................................................................................................... 35
4.6 Operatori relationali .............................................................................................................. 36
4.7 Operatori de egalitate ........................................................................................................... 37
4.8 Operatori SI pe biti ............................................................................................................ 37
4.9 Operatorul SAU-exclusiv pe biti ....................................................................................... 38
4.10 Operatorul SAU-inclusiv pe biti ........................................................................................ 38
4.11 Operatorul SI-logic ............................................................................................................ 39
4.12 Operatorul SAU-logic ........................................................................................................ 39
4.13 Operatorul conditional ........................................................................................................... 40
4.14 Operatori de atribuire ........................................................................................................... 41
4.15 Operatorul virgula [,] ............................................................................................................. 42
4.16 Precedenta si ordinea de evaluare.......................................................................................... 43

Page 2
5 Declaratii ....................................................................................................................................... 44
5.1 Specificatori de clasa de memorie ......................................................................................... 45
5.2 Specificatori de tip................................................................................................................. 46
5.3 Declaratori ............................................................................................................................. 47
5.4 Modificatorul const ............................................................................................................... 49
5.5 Initializare.............................................................................................................................. 50
5.6 Nume-tip ................................................................................................................................ 51
6 Intructiuni ...................................................................................................................................... 52
6.1 Intructiunea expresie .......................................................................................................... 52
6.2 Instructiunea compusa sau blocul .......................................................................................... 53
6.3 Instructiunea conditionala If .............................................................................................. 54
6.4 Instructiunea while ............................................................................................................. 56
6.5 Instructiunea do.................................................................................................................. 56
6.6 Instructiunea for ................................................................................................................. 57
6.7 Instructiunea switch ........................................................................................................... 58
6.8 Instructiunea breack ........................................................................................................... 60
6.9 Instructiunea continue ........................................................................................................ 61
6.10 Instructiunea return ............................................................................................................ 62
6.11 Instructiunea vida ............................................................................................................... 62
7 Functiile si strucura unui program ................................................................................................. 63
7.1 Definitia functiilor ................................................................................................................. 63
7.2 Apelul functiilor .................................................................................................................... 66
7.3 Revenirea din functii ............................................................................................................. 66
7.4 Argumentele functiei si transmiterea parametrilor ................................................................ 67
7.5 Functii cu numar variabil de parametri ................................................................................. 68
7.6 Exemple de functii si programe ............................................................................................. 69
8 Linii de control ale compilatorului ................................................................................................ 72
8.1 Inlocuirea simbolurilor; substiturii macro ............................................................................. 73
8.2 Includerea fisierelor ............................................................................................................... 74
8.3 Compilarea conditionata........................................................................................................ 75
8.4 Utilizarea directivelor de compilare ...................................................................................... 76
9 Pointeri si masive .......................................................................................................................... 78
9.1 Pointeri si adrese ................................................................................................................... 79
9.2 Pointeri si argumente de functii............................................................................................. 80
9.3 Pointeri si masive .................................................................................................................. 81
9.4 Aritmetica de adrese .............................................................................................................. 83

Page 3
9.5 Pointeri la caracter si functii .................................................................................................. 86
9.6 Masive multidimensionale..................................................................................................... 89
9.7 Masive de pointeri si pointeri la pointeri ............................................................................... 92
9.8 Initializarea masivelor si masivelor de pointer ...................................................................... 96
9.9 Masive de pointeri si masive multidimensionale .................................................................. 99
9.10 Argumentele unei linii de comanda ..................................................................................... 100
9.11 Pointeri la functii ................................................................................................................. 105
10 Structuri si reuniuni ................................................................................................................. 109
10.1 Elemente de baza ................................................................................................................. 109
10.2 Structuri si functii ................................................................................................................ 111
10.3 Masive de structuri .............................................................................................................. 113
10.4 Pointeri la structuri .............................................................................................................. 118
10.5 Structuri auto-referite .......................................................................................................... 120
10.6 Cautare in tabele .................................................................................................................. 126
10.7 Campuri ............................................................................................................................... 130
10.8 Reuniuni .............................................................................................................................. 132
10.9 Declaratii de structuri, reuniuni si campuri ......................................................................... 134
10.10 Typedef ............................................................................................................................ 136
11 Intrari/iesiri .............................................................................................................................. 138
11.1 Intrari si iesiri standard; fisiere ............................................................................................ 139
11.2 Accesul la fisiere; deschidere si inchidere ........................................................................... 140
11.3 Citire si scriere fara format .................................................................................................. 144
11.4 Citire cu format ................................................................................................................... 146
11.5 Scriere cu format ................................................................................................................. 150
11.6 Tratarea erorilor ................................................................................................................... 155
11.7 Operatoare cu directoare...................................................................................................... 157
11.8 Programe demonstrative ...................................................................................................... 159
12 Alte rutine din biblioteca standard .......................................................................................... 163
12.1 Alocarea dinamica a memoriei ............................................................................................ 163
12.2 Sortare si cautare ................................................................................................................. 164
12.3 Rutine de clasificare ............................................................................................................ 165
12.4 Operatii cu blocuri de memorie ........................................................................................... 167
12.5 Operatii cu siruri de caractere.............................................................................................. 169
12.6 Biblioteca matematica ......................................................................................................... 173
12.7 Programe demonstrative ...................................................................................................... 176

Page 4
Page 5
1. Generalitati asupra limbajului C
1.1 Introducere

Page 6
1.2 Primele programe

Page 7
Page 8
Page 9
Page 10
1.3 Meta-limbajul si setul de caractere

Page 11
2. Unitati lexicale ale limbajului C

2.1 Indentificatori

2.2 Cuvinte cheie

Page 12
2.3 Constante

Page 13
Page 14
Page 15
2.4 Siruri

Page 16
2.5 Operatori

2.6 Separatori

Page 17
Page 18
3. Variabile

3.1 Clase de memorie

Page 19
Page 20
Page 21
3.2 Tipuri de variabile

Page 22
Page 23
Page 24
3.3 Obiecte si valori-stanga

3.4 Conversii de tip

Page 25
Page 26
Page 27
Page 28
4 Operatori si expresii

4.1 Expresii primare

Page 29
Page 30
4.2 Operatori uniari

Page 31
Page 32
Page 33
4.3 Operatori multiplicativi

Page 34
4.4 Operatori aditivi

4.5 Operatori de deplasare

Page 35
4.6 Operatori relationali

Page 36
4.7 Operatori de egalitate

4.8 Operatori SI pe biti

Page 37
4.9 Operatorul SAU-exclusiv pe biti

4.10 Operatorul SAU-inclusiv pe biti

Page 38
4.11 Operatorul SI-logic

4.12 Operatorul SAU-logic

Page 39
4.13 Operatorul conditional

Page 40
4.14 Operatori de atribuire

Page 41
4.15 Operatorul virgula [,]

Page 42
4.16 Precedenta si ordinea de evaluare

Page 43
5 Declaratii

Page 44
5.1 Specificatori de clasa de memorie

Page 45
5.2 Specificatori de tip

Page 46
5.3 Declaratori

Page 47
Page 48
5.4 Modificatorul const

Page 49
5.5 Initializare

Page 50
5.6 Nume-tip

Page 51
6 Intructiuni

6.1 Intructiunea expresie

Page 52
6.2 Instructiunea compusa sau blocul

Page 53
6.3 Instructiunea conditionala If

Page 54
Page 55
6.4 Instructiunea while

6.5 Instructiunea do

Page 56
6.6 Instructiunea for

Page 57
6.7 Instructiunea switch

Page 58
Page 59
6.8 Instructiunea breack

Page 60
6.9 Instructiunea continue

Page 61
6.10 Instructiunea return

6.11 Instructiunea vida

Page 62
7 Functiile si strucura unui program

7.1 Definitia functiilor

Page 63
Page 64
Page 65
7.2 Apelul functiilor

7.3 Revenirea din functii

Page 66
7.4 Argumentele functiei si transmiterea
parametrilor

Page 67
7.5 Functii cu numar variabil de parametri

Page 68
7.6 Exemple de functii si programe

Page 69
Page 70
Page 71
8 Linii de control ale compilatorului

Page 72
8.1 Inlocuirea simbolurilor; substiturii macro

Page 73
8.2 Includerea fisierelor

Page 74
8.3 Compilarea conditionata

Page 75
8.4 Utilizarea directivelor de compilare

Page 76
Page 77
9 Pointeri si masive

Page 78
9.1 Pointeri si adrese

Page 79
9.2 Pointeri si argumente de functii

Page 80
9.3 Pointeri si masive

Page 81
Page 82
9.4 Aritmetica de adrese

Page 83
Page 84
Page 85
9.5 Pointeri la caracter si functii

Page 86
Page 87
Page 88
9.6 Masive multidimensionale

Page 89
Page 90
Page 91
9.7 Masive de pointeri si pointeri la pointeri

Page 92
Page 93
Page 94
Page 95
9.8 Initializarea masivelor si masivelor de pointer

Page 96
Page 97
Page 98
9.9 Masive de pointeri si masive
multidimensionale

Page 99
9.10 Argumentele unei linii de comanda

Page 100
Page 101
Page 102
Page 103
Page 104
9.11 Pointeri la functii

Page 105
Page 106
Page 107
Page 108
10 Structuri si reuniuni

10.1 Elemente de baza

Page 109
Page 110
10.2 Structuri si functii

Page 111
Page 112
10.3 Masive de structuri

Page 113
Page 114
Page 115
Page 116
Page 117
10.4 Pointeri la structuri

Page 118
Page 119
10.5 Structuri auto-referite

Page 120
Page 121
Page 122
Page 123
Page 124
Page 125
10.6 Cautare in tabele

Page 126
Page 127
Page 128
Page 129
10.7 Campuri

Page 130
Page 131
10.8 Reuniuni

Page 132
Page 133
10.9 Declaratii de structuri, reuniuni si
campuri

Page 134
Page 135
10.10 Typedef

Page 136
Page 137
11 Intrari/iesiri

Page 138
11.1 Intrari si iesiri standard; fisiere

Page 139
11.2 Accesul la fisiere; deschidere si inchidere

Page 140
Page 141
Page 142
Page 143
11.3 Citire si scriere fara format

Page 144
Page 145
11.4 Citire cu format

Page 146
Page 147
Page 148
Page 149
11.5 Scriere cu format

Page 150
Page 151
Page 152
Page 153
Page 154
11.6 Tratarea erorilor

Page 155
Page 156
11.7 Operatoare cu directoare

Page 157
Page 158
11.8 Programe demonstrative

Page 159
Page 160
Page 161
Page 162
12 Alte rutine din biblioteca standard

12.1 Alocarea dinamica a memoriei

Page 163
12.2 Sortare si cautare

Page 164
12.3 Rutine de clasificare

Page 165
Page 166
12.4 Operatii cu blocuri de memorie

Page 167
Page 168
12.5 Operatii cu siruri de caractere

Page 169
Page 170
Page 171
Page 172
12.6 Biblioteca matematica

Page 173
Page 174
Page 175
12.7 Programe demonstrative

Page 176
Page 177
Page 178
Page 179
Page 180
Page 181

Das könnte Ihnen auch gefallen