Trouver le nombre de caractere dans une chaine (LEN) et création d'une petit pro [Résolu]

Signaler
Messages postés
14
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
9 février 2006
-
Messages postés
14
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
9 février 2006
-
Salut à tous !

Je suis débutant en Delphi et j'ai deux petit problemes :(

1] J'aimerais trouver le nombre de caractéres se trouvant dans une chaîne par exemple, comme le Len() en VB et le $Len() en mIRC Scripting.

J'ai asseyer ces petits code mais sans résultats :( ;

Edit1.Text := Len('Jerem');
-
Edit1.Text := Length('Jerem');

Auncun des deux ne marche ..

2] Mon seconde probleme, c'es que je ne parvient pas à crée une procédure qui va me "répondre".
Voici un exemple pour que se soie plus clair ;

Edit1.Text := La_jolie_precedure('Jerem');

J'aimerais que cette procédure place "Jerem" suivit de "123" dans mon edit (C'es sans interret mais c'es un exemple !).

Voila, j'ai asseyer d'être le plus clair possible dans mes questions (Et ca n'as pas été facil :P).

Merci pour vos futures réponses :)

A+
A voir également:

2 réponses

Messages postés
323
Date d'inscription
jeudi 6 juin 2002
Statut
Membre
Dernière intervention
24 septembre 2008
2
Bonjour Jerem_,

pour répondre à ta première question, la réponse est dans la question. Pour avoir le nombre de caractère contenu dans une chaine de caractère il faut utilisé Length. Le seul problème c'est que tu prends pas en compte le type de retour de cette fonction. Pour l'afficher dans un TEdit il faut le formater en String et non utiliser la valeur brut de retour car c'est un entier.

exemple :
  Edit1.Text := IntToStr(Length('Jerem'));


pour ce qui est de ta deuxième question, il est tout a fait normal de ne rien récupérer en valeur de retour d'une procedure. Si tu souhaites récupérer une valeur de retour tu as deux possibilités.

sois tu utilises une function.

exemple :
function La_jolie_precedure(sName : string) : string;
begin
  Result := sName + '123';
end;

Edit1.Text := La_jolie_precedure('Jerem');


sois tu utilises une procedure.

exemple :
procedure La_jolie_precedure(sName : string; var sNameResult : string);
begin
  sNameResult := sName + '123';
end;

La_jolie_precedure('Jerem', sName);

Edit1.Text := sName;


Tu comprendras que la function est mieux adapté à ton besoin.

Bonne Prog, ;)

Olivier

PS : Lorsqu'une réponse vous convient, n'oubliez pas de la valider.
Messages postés
14
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
9 février 2006

Merci pour tes réponse, tout marche impacablement :P

A+