Referência ao Ficheiro util.h


Descrição Detalhada

Implementação de funções auxiliares básicas.

Esta biblioteca disponibiliza funções que permitem ler frases do teclado, gerar números aleatórios e ordenar vectores.

Autor:
Rui Carlos A. Gonçalves <rcgoncalves.pt@gmail.com>
Versão:
2.1.1
Data:
02/2009

Definido no ficheiro util.h.

Ir para o código fonte deste ficheiro.

Funções

int rgets (char **str)
 Lê uma frase do stdin.
int rgetsEOF (char **str)
 Lê uma frase do stdin.
int rngets (char *str, int dim)
 Lê uma frase do stdin.
int getRandom (int min, int max)
 Gera um número aleatório entre dois valores.
int mergeSort (void *vals[], int begin, int end, int(*comp)(void *, void *))
 Ordena um array.


Documentação das Funções

int getRandom ( int  min,
int  max 
)

Gera um número aleatório entre dois valores.

Atenção:
o valor de min deve ser menor do que max.
Parâmetros:
min valor mínimo que pode ser gerado.
max valor máximo que pode ser gerado.
Retorna:
valor gerado.

Definido na linha 136 do ficheiro util.c.

int mergeSort ( void *  vals[],
int  begin,
int  end,
int(*)(void *, void *)  comp 
)

Ordena um array.

Utiliza o algoritmo Mergesort.
Ordena os elementos do array no intervalo [begin,end], usando como função de comparação comp.
A função comp tem que ser do tipo: int comp(void*,void*).

Parâmetros:
vals array de apontadores para os elementos a ordenar.
begin posição onde começamos a ordenação.
end posição onde termina a ordenação.
comp função de comparação.
Retorna:
número de erros detectados.

Definido na linha 201 do ficheiro util.c.

int rgets ( char **  str  ) 

Lê uma frase do stdin.

Lê todos o caracteres inseridos até encontrar o carácter \n. Esta função, ao contrário da rngets, recebe como argumento o endereço para uma variável do tipo char*, e não a própria variável. Se ocorrer algum erro é colocado o valor NULL em str.

Atenção:
o espaço para a string onde será colocado o resultado é reservado pela função rgets, como tal não deve ser previamente alocado, pois se isso acontecer será perdido.
Parâmetros:
str endereço da string onde será colocado o resultado.
Retorna:
-2 se o endereço do resultado não for válido;
-1 se ocorrer algum erro;
tamanho da string caso contrário.

Definido na linha 26 do ficheiro util.c.

int rgetsEOF ( char **  str  ) 

Lê uma frase do stdin.

Lê todos o caracteres inseridos até encontrar um EndOfFile. Esta função, ao contrário da rngets, recebe como argumento o endereço para uma variável do tipo char*, e não a própria variável. Se ocorrer algum erro é colocado o valor NULL em str.

Atenção:
o espaço para a string onde será colocado o resultado é reservado pela função rgetsEOF, como tal não deve ser previamente alocado, pois se isso acontecer será perdido.
Parâmetros:
str endereço da string onde será colocado o resultado.
Retorna:
-2 se o endereço do resultado não for válido;
-1 se ocorrer algum erro;
tamanho da string caso contrário.

Definido na linha 70 do ficheiro util.c.

int rngets ( char *  str,
int  dim 
)

Lê uma frase do stdin.

Verifica se a frase introduzida não excede a tamanho máximo (dim-2):

  • caso isto aconteça a frase é perdida;
  • caso contrário a frase é colocada na variável str (as frases lidas nunca têm o carácter \n no fim).
Atenção:
o espaço referenciado por str tem que ser previamente alocado.
Parâmetros:
str local onde é guardada a frase lida.
dim tamanho máximo da expressão é dim-2.
Retorna:
tamanho da frase lida (ou -1 caso não seja lida nenhuma frase).

Definido na linha 114 do ficheiro util.c.


LibRCG © 2004-2009   Rui Carlos A. Gonçalves