djfarinha Postado Dezembro 15, 2009 Denunciar Share Postado Dezembro 15, 2009 alguém pode me explica oque essa funçao faz:chr(ord("varialvel");agradecido Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Dezembro 15, 2009 Denunciar Share Postado Dezembro 15, 2009 alguém pode me explica o que essa funçao faz:chr(ord("varialvel");O função Ord retorna um valor inteiro para qualquer tipo ordinal. É usado principalmente para converter carácter ou enumerações em um numero equivalente. 1 function Ord ( Arg : AnsiChar | Char | WideChar | Enumeration | Integer ) : Integer; 2 function Ord ( Arg : Int64 ) : Int64; exemplo:var A : AnsiChar; C : Char; W : WideChar; E : Boolean; I : Integer; I64 : Int64; begin A := 'A'; C := 'C'; W := 'W'; E := True; I := 22; I64 := 64; ShowMessage('A = '+IntToStr(Ord(A))); ShowMessage('C = '+IntToStr(Ord(C))); ShowMessage('W = '+IntToStr(Ord(W))); ShowMessage('E = '+IntToStr(Ord(E))); ShowMessage('I = '+IntToStr(Ord(I))); ShowMessage('I64 = '+IntToStr(Ord(I64))); end; Resultados A = 65 C = 67 W = 87 E = 1 I = 22 I64 = 64 O função Chr converte um valor inteiro ( IntValue ) em um AnsiChar ou WideChar 1 function Chr ( IntValue : Integer ) : AnsiChar; 2 function Chr ( IntValue : Integer ) : WideChar; exemplo: var tab : char; crlf : string; begin tab := Chr(9); crlf := Chr(13)+Chr(10); ShowMessage('Hello'+tab+'World'); ShowMessage(''); ShowMessage('Hello'+crlf+'World'); ShowMessage(''); end; Podemos lidar com os caracteres individualmente, ao invés de inseridos em strings, usando a variável "char". var Letra: char; begin Letra:= 'A'; end; É preciso ter cuidado aqui pois a variável Letra não é uma string de um único caracter e sim apenas um único caracter. Para usar o código ASCII da letra, ao invés da sua representação gráfica, é preciso usar antes o sinal "#". Por exemplo Letra:= #65 é o mesmo que Letra:= 'A', pois 65 é o código ASCII para a letra "A". O Delphi possui diversas funções pré definidas, que são usadas em conjunto com as strings. As principais são: chr(X) - Fornece um caracter a partir do seu código ASCII (X pode ser uma expressão numérica). Por exemplo: Letra:= chr(65); Letra:= chr(55 + 10); ord(X) - Fornece o código ASCII da letra especificada. Exemplo (Valor é uma variável integer): Valor:= ord('A'); Valor:= ord(Nome[1]); Outro exemplo: Como Criptografar dados no Delphi? Resposta: Function EnDeCripta (Texto : String; Chave: Word) : String; var I: Integer; Saida : String; begin Saida := \'\'; { Atribuímos o valor inicial da variável como sendo uma String vazia} For I := 1 to Length (Texto) do {Aqui criamos laço “FOR DO“ indo de 1 ao tamanho em bytes da variável a ser criptografada, atribuindo o valor numérico à variável “I”} Saida := Saida + Char ( Not ( Ord ( Texto[I] ) - Chave ) ); {Este é o ponto-chave da função, pois ele após percorrer cada letra da String(Texto) toma as seguintes medidas: Result := Saida; { Result é o termo usado para receber o resultado da nossa função e lançá-la como resultado da própria função.} end;1 - Converte a Letra da posição “I” na String “Texto” em um número Ordinal, e subtraindo-lhe o valor também inteiro da chave que nesta função só pode ser um valor INTEGER .2 – Após esta conversão e subtração, usamos o operador booleano Not, que inverte o valor de “I”. Ex.Quando “I” tiver o valor 50 com o Not(I) teríamos –51.3 – Usando a função Char() podemos transformar o número Ordinal trabalhado em forma de Caracter, segundo tabela ASCII.Ex.O número ordinal 80, corresponde ao caracter “P“ na tabela ASCII.4 – E, finalmente, concatenamos(unimos) à variável “Saida” seu valor anterior acrescido textualmente do novo caracter criptografado, trazendo após o último caracter da String, uma outra String desta vez totalmente criptografada, como sendo o conteúdo de “Saida”. } abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
djfarinha
alguém pode me explica oque essa funçao faz:
chr(ord("varialvel");
agradecido
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.