UnStuff
Altera uma sequencia de bits de uma string para 0.
Sintaxe
UnStuff( < @cStr >, < nStart >, < nTest >, < nLength > )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cStr | caractere | Indica a string que será modificada. | X | X |
nStart | numérico | Indica o índice do bit inicial. | X |
|
nTest | numérico | Indica a quantidade de bits que serão colocados em 0. | X |
|
nLength | numérico | Indica o índice do último byte que será modificado. | X |
|
Observações
- nStart inicia em 1.
- nLength inicia em 0.
- Caso seja passado 0 em nStart e nTest for maior do que a quantidade de bits indicada por nLength ( (nLength + 1) 8 ), a quantidade de bits que serão alteradas para 0 será nTest - 1.
- Caso seja passado um valor menor do que 0 em nLength, a função considerará como se tivesse colocado o valor máximo do índice.
- Caso seja passado um valor menor do que 0 em nStart, a aplicação AdvPL é interrompida com a ocorrência de erro fatal "Start bit underflow on UnStuff".
- Caso o tamanho da string passada em cStr seja menor do que o valor passado em nLength, a aplicação AdvPL é interrompida com a ocorrência de erro fatal "Bit string length out of bounds on UnStuff".
- A partir da build 131227, caso seja passado um valor menor do que 0 em nTest, a aplicação AdvPL é interrompida com a ocorrência de erro fatal "Test Bit underflow on UnStuff".
Exemplos
Exemplo 1
User Function tstUnStuff() Local cStr := "", cRet := "" Local nStart := 0, nTest := 0, nLen := 0 cStr := chr( 255 ) + chr( 255 ) + chr( 255 ) + chr( 255 ) nStart := 5 nTest := 8 nLen := Len( cStr ) - 1 UnStuff( @cStr, nStart, nTest, nLen ) //será exibida a string "11110000000011111111111111111111" conout( bitstrdump( cStr ) ) return STATIC Function BitStrDump( cString, nStart, nLength ) Local cStrDump := '', cAsc := '' Local nTamStr := len( cString ), nI := 0 DEFAULT nStart := 1 DEFAULT nLength := nTamStr cString := SubStr( cString, nStart, nLength ) For nI := 1 to nTamStr cASC := SubStr( cString, nI, 1 ) cStrDump += NToC( Asc( cASC ), 2, 8, "0" ) Next nI Return cStrDump
Veja também
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas