Archive for category C++

Utilizarea sirurilor de caractere in limbajul de programare C++

In limbajul de programare C++, un sir de caractere se defineste in doua moduri:

  • vector de caractere – zona de memorie de lungime prestabilita care se rezerva la momentul compilarii aplicatiei;
  • pointer – contine adresa de memorie unde se stocheaza sirul de caractere; de regula, aceasta zona de memorie este alocata la momentul executiei aplicatiei.

Read the rest of this entry »

, , ,

No Comments

Conversia unei expresii matematice din scrierea infixata in scrierea postfixata in C++

Scrierea postfixata (forma poloneza inversa) a fost realizata de matematicianul de origine poloneza Jan Lukasiewicz. Particularitati ale acestei forme de scriere a expresiilor matematice sunt prezentate la [...].
Un algoritm de transformare a unei expresii matematice din scrierea infixata in scrierea postfixata a fost elaborat de Edsger Dijkstra (Dijkstra Shunting Algorithm).
Read the rest of this entry »

, , , ,

10 Comments

Structurile de date Stiva si Coada in C++

Stiva este o structura de date logica, implementarea sa din punct de vedere fizic fiind realizata prin utilizarea altor structuri de date.
Elementele componente ale structurii de tip stiva sunt de acelasi tip, ceea ce inseamna ca stiva este o structura de date omogena.
Exista doua operatii de baza cu structura de tip stiva: adaugarea si extragerea unui element. Modalitatea de implementare a operatiilor este data de disciplina de acces: LIFO – Last In First Out. Toate inserarile (push) si extragerile (pop) sunt realizate la acelasi capat al structurii de implementare, denumit varful stivei.
Read the rest of this entry »

, , , ,

2 Comments

Evaluarea unei expresii matematice in scrierea postfixata in C++

Scrierea postfixata (forma poloneza inversa) [...] este o forma de reprezentare a unei expresii matematice aritmetice in care operatorii sunt scrisi, specificati dupa operanzi.
Avantaje ale scrierii postfixate fata de scrierile prefixata si infixata:

  • Evidentierea clara a ordinii de efectuare a operatiilor;
  • Parantezele pentru fortarea prioritatii de aplicare a operatorilor nu mai sunt necesare;
  • Evaluarile sunt usor de efectuat cu ajutorul calculatorului.

Read the rest of this entry »

, , , ,

1 Comment

Implementarea structurii de date Matrice Rara in C++ utilizand lista simplu inlantuita

Structurile de stocare a matricelor rare sunt prezentate la [...].
Lista simpla este o structura de date liniara, formata din elemente denumite noduri. Un nod este compus din doua categorii de campuri:

  • Campul cu informatia necesara prelucrarii;
  • Campul cu informatia de legatura cu nodul succesor in cadrul structurii de tip lista simpla; se defineste sub forma de pointer catre structura nodului pentru a retine adresa nodului care urmeaza in cadrul listei simple.

Read the rest of this entry »

, , , ,

2 Comments

Implementarea structurii de date Matrice Rara in C++ utilizand masive de date

Matricea rara reprezinta in tip special de masiv dimensional format dintr-un numar foarte mare de elemente din care o pondere foarte mare o ocupa elementele nule. Astfel, declararea clasica a unui masiv bidimensional in limbajul C++ conduce la utilizarea inutila a memoriei prin stocarea valorilor nule si a capacitatii de procesare.
Read the rest of this entry »

, , , , ,

1 Comment

Utilizarea unei biblioteci DLL – Dynamic Link Library in C++ sub Visual Studio 2008

Utilizarea elementelor de programare incluse in biblioteci DLL [...] se realizeaza in aplicatii C++ cu respectarea anumitor reguli precizate mai jos.
Pentru a utiliza o biblioteca DLL in limbajul de programare C++ sub mediul de programare Visual Studio, se procedeaza astfel:

  • Crearea unui proiect C++ de tip Console application;
  • Definirea continutului pentru fisierul sursa care utilizeaza elemente incluse in biblioteca DLL;
  • Crearea fisierului executabil.

Read the rest of this entry »

, , , , , , , , ,

1 Comment

Crearea unei biblioteci DLL – Dynamic Link Library in C++ sub Visual Studio 2008

Utilizarea bibliotecilor DLL asigura productivitate si/sau castig financiar in procesul de dezvoltare software prin reutilizarea de cod sursa C++. Rutinele si/sau componentele de programare incluse intr-o biblioteca DLL sunt doar referite in aplicatii fara a mai fi nevoie reimplementarea lor in aceste aplicatii.

Read the rest of this entry »

, , , , , , , , ,

1 Comment

Gradul de optimizare a spatiului de memorie prin alocarea dinamica a memoriei in C++

Alocarea de memorie la momentul executiei unei aplicatii permite utilizarea unui spatiu de memorie, exprimat in numar de bytes, cu exact dimensiunea de memorie heap necesara pentru stocarea datelor definite prin intermediul variabilelor. Alocarea la momentul compilarii permite rezervarea si utilizarea unui spatiu de memorie cu dimensiune predefinita, exprimata in numar de bytes. In aceasta situatie, dezvoltatorul software trebuie sa anticipeze spatiul de memorie de dimensiune maxima care poate fi utilizat in cadrul aplicatiei.
Read the rest of this entry »

, , , , , , , , ,

No Comments

Implementarea aritmeticii de pointeri in C++

In limbajul de programare C++, zonele de memorie pot fi accesate indirect prin variabile de tip pointer [...]. De asemenea, avand la dispozitie o adresa de memorie, se asigura deplasarea pe zona de memorie pornind de la adresa stocata in variabila pointer. Acest lucru se asigura prin operatori aritmetici si poarta denumirea de aritmetica de pointeri.

Read the rest of this entry »

, , , , , , , , ,

1 Comment