Do while/fr
< Do while
| LSL Portail Francophone | LSL Portail Anglophone | Fonctions | Évènements | Types | Operateurs | Constantes | Contrôle d'exécution | Bibliothèque | Tutoriels |
boucle do.. while (fais... tant que...) (condition);
| • | boucle | – | s'exécute une fois, puis vérifie condition. | |
| • | condition | – | Si la condition vérifiée est vraie, revient en arrière et effectue boucle (loop) à nouveau. |
Chacun de ces états peut être vide. Une boucle do... while est légèrement plus rapide et utilise moins de mémoire qu'une boucle while or for.
Specification
| Type | Condition |
|---|---|
| integer | True if it is not zero. |
| float | True if it is not zero.[1] |
| string | True if its length is not zero. |
| key | True only if it is a valid key and not NULL_KEY. |
| vector | True if the vector is not ZERO_VECTOR. |
| rotation | True if the rotation is not ZERO_ROTATION. |
| list | True if the length is not zero. Note that correct behavior is only seen with Mono-compiled scripts; LSO-compiled scripts incorrectly resolve to false if the list is non-empty: BUG-230728 |
Examples
//Compte de 1 à 5
default
{
state_entry()
{
integer olf;
do
llSay(0, (string) (++olf));
while(olf<5);
}
}
//Compte de 0 à 4
default
{
state_entry()
{
integer olf;
do
llSay(0, (string)olf);
while((++olf)<5);
}
}
Deep Notes
Footnotes
- ^ The OpenSim LSL compiler will not do this implicitly. You will need to use an explicit check.