Questions

cs_Majen Messages postés 18 Date d'inscription jeudi 19 juillet 2001 Statut Membre Dernière intervention 26 janvier 2002 - 26 janv. 2002 à 14:13
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 - 26 janv. 2002 à 17:50
qqn pourrais me dire ou est l'erreur ds ce morceau de code :

var
Form1: TForm1;
i: Integer;
x: Integer;
y: String;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
x := Length(Edit1.Text);
for i := 1 to x do
y := Copy(Edit1.Text,i,1);
if y := 'a' then Edit2.Text := Edit2.Text + '@';
end;
end.

je sais que c lourd comme question mais est ce que qqn pourrait me dire l'equivalent en delphi des fonctions Asc et Hex$ (vb)... Merci d'avance :big)

1 réponse

cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
26 janv. 2002 à 17:50
Cher ami,
Quand tu utlises une structure For..do et que que tu n'utilises pas de délimiteur de bloc (Begin..end), seule l'instruction suivante est éxécutée dans la boucle (ici : y := Copy(Edit1.Text,i,1)).

La réponse est donc :
for i := 1 to x do
begin
y : = Copy(Edit1.Text,i,1);
if y = 'a' then
Edit2.Text := Edit2.Text + '@';
end;
end;

Vu ?
Astuce : indentes tes blocs de code et tu verras que ça saute aux yeux !
Pour le reste :
Chr renvoie le caractère correspondant à une valeur ASCII.
Ord renvoie le rang d'une expression
ordinale.
Pour affecter une valeur hexdécimale à un nombre, il suffit d'écrire, avec X : integer :
X: =$11111111 ou tout nombre compris entre $00000000 et $FFFFFFFF (nombre 32 bits).
Ok ?
Alors, pourquoi chercher des équivalences à VB :-p
0
Rejoignez-nous