La Biblioteca d'Execució de Delphi (RTL, per les seves sigles en anglès) és un conjunt de biblioteques i unitats que proporcionen funcionalitats bàsiques i avançades per a la programació en Delphi. La RTL inclou funcions per a la gestió de cadenes, manipulació de fitxers, gestió de memòria, operacions matemàtiques, i molt més. En aquest tema, explorarem les característiques clau de la RTL i com utilitzar-les en els teus projectes Delphi.

Continguts

Introducció a la RTL

La RTL és una part fonamental de Delphi que proporciona les eines necessàries per a la programació diària. Inclou una àmplia gamma de funcionalitats que faciliten la creació d'aplicacions robustes i eficients.

Unitats Clau de la RTL

Algunes de les unitats més importants de la RTL són:

  • System: Proporciona funcions bàsiques del sistema, gestió de memòria, i tipus de dades fonamentals.
  • SysUtils: Inclou funcions per a la gestió d'errors, manipulació de cadenes, i operacions de fitxers.
  • Math: Proporciona funcions matemàtiques avançades.
  • Classes: Inclou classes per a la gestió de llistes, fluxos, i altres estructures de dades.

Funcions i Procediments Comuns

Exemple de Funcions i Procediments

uses
  SysUtils;

var
  S: string;
  I: Integer;
begin
  S := '123';
  I := StrToInt(S); // Converteix una cadena a un enter
  WriteLn('El valor enter és: ', I);
end.

Explicació

  • StrToInt: Converteix una cadena que representa un número enter a un tipus de dada Integer.
  • WriteLn: Escriu una línia de text a la consola.

Gestió de Cadenes

La RTL proporciona diverses funcions per a la manipulació de cadenes. Algunes de les més utilitzades són:

  • Length: Retorna la longitud d'una cadena.
  • Copy: Extreu una subcadena d'una cadena.
  • Pos: Retorna la posició d'una subcadena dins d'una cadena.

Exemple de Gestió de Cadenes

uses
  SysUtils;

var
  S, SubStr: string;
  PosSubStr: Integer;
begin
  S := 'Hola, món!';
  SubStr := 'món';
  PosSubStr := Pos(SubStr, S); // Troba la posició de 'món' dins de 'Hola, món!'
  WriteLn('La posició de "', SubStr, '" és: ', PosSubStr);
end.

Manipulació de Fitxers

La RTL també inclou funcions per a la manipulació de fitxers, com ara:

  • AssignFile: Assigna un nom de fitxer a una variable de fitxer.
  • Rewrite: Crea un fitxer nou.
  • Reset: Obre un fitxer existent per a lectura.
  • CloseFile: Tanca un fitxer obert.

Exemple de Manipulació de Fitxers

uses
  SysUtils;

var
  F: TextFile;
  S: string;
begin
  AssignFile(F, 'exemple.txt');
  Rewrite(F);
  WriteLn(F, 'Això és un exemple de text.');
  CloseFile(F);

  Reset(F);
  ReadLn(F, S);
  WriteLn('Contingut del fitxer: ', S);
  CloseFile(F);
end.

Operacions Matemàtiques

La unitat Math proporciona funcions matemàtiques avançades, com ara:

  • Sin: Calcula el sinus d'un angle.
  • Cos: Calcula el cosinus d'un angle.
  • Sqrt: Calcula l'arrel quadrada d'un nombre.

Exemple d'Operacions Matemàtiques

uses
  Math, SysUtils;

var
  Angle, Result: Double;
begin
  Angle := Pi / 4; // 45 graus
  Result := Sin(Angle);
  WriteLn('El sinus de 45 graus és: ', Result:0:2);
end.

Exercicis Pràctics

Exercici 1: Manipulació de Cadenes

Descripció: Escriu un programa que llegeixi una cadena de l'usuari i mostri la longitud de la cadena, la primera lletra, i la posició de la primera 'a' (si existeix).

Solució:

uses
  SysUtils;

var
  S: string;
  PosA: Integer;
begin
  Write('Introdueix una cadena: ');
  ReadLn(S);
  WriteLn('Longitud de la cadena: ', Length(S));
  if Length(S) > 0 then
    WriteLn('Primera lletra: ', S[1]);
  PosA := Pos('a', S);
  if PosA > 0 then
    WriteLn('Posició de la primera "a": ', PosA)
  else
    WriteLn('No hi ha cap "a" a la cadena.');
end.

Exercici 2: Manipulació de Fitxers

Descripció: Escriu un programa que creï un fitxer de text, escrigui diverses línies de text, i després llegeixi i mostri el contingut del fitxer.

Solució:

uses
  SysUtils;

var
  F: TextFile;
  S: string;
begin
  AssignFile(F, 'exemple2.txt');
  Rewrite(F);
  WriteLn(F, 'Primera línia de text.');
  WriteLn(F, 'Segona línia de text.');
  CloseFile(F);

  Reset(F);
  while not Eof(F) do
  begin
    ReadLn(F, S);
    WriteLn('Contingut del fitxer: ', S);
  end;
  CloseFile(F);
end.

Conclusió

En aquest tema, hem explorat la Biblioteca d'Execució de Delphi (RTL) i les seves funcionalitats clau. Hem après a utilitzar unitats importants com SysUtils i Math, i hem vist exemples pràctics de manipulació de cadenes, fitxers i operacions matemàtiques. La RTL és una eina poderosa que facilita la programació en Delphi, proporcionant una àmplia gamma de funcionalitats per a la gestió de dades i operacions comunes.

Curs de Programació Delphi/Object Pascal

Mòdul 1: Introducció a Delphi/Object Pascal

Mòdul 2: Estructures de Control i Procediments

Mòdul 3: Treballant amb Dades

Mòdul 4: Programació Orientada a Objectes

Mòdul 5: Funcions Avançades de Delphi

Mòdul 6: Desenvolupament d'Interfícies Gràfiques amb VCL i FMX

Mòdul 7: Desenvolupament Web i Mòbil

Mòdul 8: Millors Pràctiques i Patrons de Disseny

Mòdul 9: Projecte Final

© Copyright 2024. Tots els drets reservats