BUF_TO_STRING
Copia o número de bytes (caracteres) especificado do buffer BUF para a
string STR, retornando -1 quando a string não comporta o conteúdo
solicitado. É uma função (sem estado; não requer instância).
Biblioteca: HI_STD · Namespace: HILS · Tipo: função
Função
BUF_TO_STRING
+-------------+
UINT ----|LEN |
| |
ANY ----|BUF |
| |
STRING ----|STR -------- |----
+-------------+
A função transfere LEN bytes do vetor BUF para a string STR. Se o
comprimento solicitado exceder a capacidade da string de destino, nenhuma cópia
é efetuada e a função retorna -1; caso contrário, retorna SUCCESS (0).
Parâmetros
Nome |
Direção |
Tipo |
Padrão |
Faixa / Unidade |
Descrição |
|---|---|---|---|---|---|
LEN |
IN |
UINT |
— |
bytes |
Número de bytes a serem copiados para a string. |
BUF |
IN |
ANY |
— |
— |
Vetor de dados a ser transferido para a string. |
STR |
IN_OUT |
STRING |
— |
— |
String que recebe o conteúdo de |
Retorno / Saídas
Retorna um INT:
SUCCESS(0) — operação realizada com sucesso.-1— a string de destino é menor que o tamanho a ser copiado (nenhuma cópia efetuada).
Pré-condições
A string
STRdeve ter capacidade suficiente para receberLENbytes.
Exemplo
Clique aqui para baixar a tabela de variáveis
Código ST
VAR
len : UINT := 30; (* Nro de bytes a serem copiados *)
my_buf : ARRAY [0..29] OF SINT; (* Buffer a ser copiado *)
my_str : STRING; (* String a receber BUF *)
ret : INT; (* Retorno da função *)
END_VAR
(* Exemplo de ativação da função dentro da POU *)
ret := HILS.BUF_TO_STRING(len, my_buf, my_str);
IF (ret = -1) THEN
(* Trata erro na conversão. Tamanho inválido. *)
END_IF;