Sunteți pe pagina 1din 5

Primele notiuni de C

// aici void include un comenatriu


/* sau aici*/
Un mic program:
#include<stdio.h> //biblioteca de unde void importa functia printf
void main(void) //void inseamna k nu returnez nimica
{ //dupa aceasta acolada va incepe codul
printf(hello world );//afisarea unui mesaj cu ajutorul functiei printf si //urmat de ;
}//inched acolada care am deschis-o mai sus.regula fiecare acolada deschisa are //o acolada inchisa
Caractere escape:
\n afiseaza pe urmatoarea linie
\a-caracter ASCII de atentionare
\b-backspace
\f-avans hartie
\r-retur de car
\t-tabulator orizontal
\v-tabulator vertical
\\-\
\-
\-
\?-?
\num-val ASCII in ocatl
\xnum-val ASCII in hexagonal
Datele:
Principalele tipuri de date char(1 bit),int(2 biti),float(4 octeti),double(8 octeti);
Modificatorii de tip

'

UCP registrii in variabila plasand rapid mai programul face a pt. folosit - registeser
valoarea ste injumatate - short
valoarea dubleaza - long
le procesoare toate pe fel la rula a pt. fix biti de nr stabileste - signed
negative val eliminand disponibil spatiul mareste unsigned
Daca nu vreau sa scriu mult pot folosii sintaxa typedef ex:
Varianta grea: unsigned long int var;
Varianta scurta:typedef unsigned long int var UNLINT ;acuma voi folosi UNLINT var2(pt. o alta variabila)
() [] . ->
++ -- + - * & ! ~ Seizeof
* / %
+ -
>> <<
== !=
&
^
|
&&
||
?:
= += -= /= %= &= ^= != <<= >>=
Afisare date:
Litera_citita=getchar();//citeste o litera de la tastatura iar toupper(litera)-transforma in majuscula
putch(7)emite un sunet
Vaorile octale vor incepe cu 0(zero) si cele hexazecimale cu 0x(la fel zero)
Afisare unui numar printf(numarul este%d,nr)
In loc de %d mai pot scrie:
%o(o de la oaie)-pt. afisarea in octal
%x-pt. afisarea in hexazecimal
%u-pt. afisarea nr de tip unsigned
%ld-pt. afisarea nr de tip long
%f-pt. afisarea nr de tip float
%c-pt. afisarea nr de tip char
%e-pt. afisarea nr de tip exponential
%p-pt. afisarea locatiei de memorie
+-pt. a afisa semnull ex:%+d
%d-pt. determinare nr, de caractere afisate %d si la pointer &val
Operatii de baza : *,+,-,%,++,--
Operatii pe biti:
Deplasarea bitilor >>,<<<
ex:nal<<2;delasez 2 biti spre stanga

Seizeof() arata at spatiu se utilizeaza pt. o
variabila ex seizeof(int)
Teste si conditii:
-if-tesarea unei conditii :
Foruma:
if(conditie)
Instructiuni;
else
Instructiuni;
P Q P&Q(si)

1
1 1
1 0 0
0 1 0
0 0 0
P Q P|Q(ori)
1 1 0
1 0 1
0 1 1
0 0 0
P Q P^Q(sau)
1 1 0
1 0 1
0 1 1
0 0 0
P ~P(non)
1 0
1 0
0 1
0 1
Testele relationare

'


<
>
<
>
diferit !
egal
egal sau mic mai
cu egal sau mmare mai
ca.. mic mai
ca.. mare mai
Folosita: pentru a verifica daca ceva este adevarat(orice valoare diferita de 0 este
considerate adevarata)
-while
Foruma:
while(conditie)
instructiuni;
Folosita:pentru a efectua ceva de n ori fara a cunoaste cu exactitate de cate ori
-for
Forumula:
for(initializare;test;incrementare)
instructiuni
Folosita:pentru a efectua un anumit lucru de una numit numar de ori (numaru de ori este
cunoscut)
-do
Foruma:
do
instructiuni;
while(conditie);
Folosita:n cazul in care trebuie sa parcurg o portiune de cod cel putin o data
-whitch
Formula:
switch(expresie){
case constanta_1:expresie;
break;
default: daca_nu-se_gaseste_un_corespondent;
}
Folosita:de obicei pentru un meniu darn u numai
Note si utile:
La instructiunea if/while si instructiunea else si putem utilize:


ori
si
||
& &
La instructiunea for putem avea-

) ; , ; (
) ; (;
ere incremenat test test re initializa for
re incrementa test for
Instrructiunea continue; are ca rol sarirea iteratiei curente
Instructiunea break are ca rol iesirea dintr-o bucla atunci cand se indeplineste o
conditie
Macroinstructiuni si Constante
O constanta: #define CONSTANTA 124
instructiunea se plaseaza dupa blocul #include si inainte de void main(void)
instructiunea nu este urmata de ;
de obicei se utilizeaza majuscule pt. a le deosesbi de variabile
Constante :
-__FILE__(dublu _ )-arata numele programului(a fisierului)
-__LINE__ -arata linia curenta de cod
-__DATE__-arata data ultimii rularii progrmaului
-__TIME__-arata ora ultimii rularii programului
#ifded-arata daca s-a definit anterior un symbol iar #indef scoate simbolul din lista
Iar #edif incheie #ifdef-ul
#ifdef __cplusplus testeaza daca este inclus compilatorul de c++
Un fisier proptiu #incldue my_antet
Utilizari ale macroinstructiunilor si constantelor:
#define MAX(x) ((x) >(y)?(x):(y))//calculeaza maximul
#define CUB(x) ((x)*(x)) //calculeaza cubul unui numar
iruri
Functia gets(argument) acepta ca argument un sir de caractere citit de la tastatura si il
atribuie sirului-argument
Functia streln(argument) accepta ca argument un sir de caractere si va returna lungimea
sirului de caractere