2010-04-15 8 views
1

Salut à tous,Doutes en langue ada

Je suis un débutant dans les language.I ada ont un petit morceau de quelqu'un code.Can s'il vous plaît me tel qu'est-ce que ça veut dire?

type Myarr_Type is array (Character) of Character; 

    Myarr : Myarr_Type; 
    C1 : character := character'first; 
    C2 : character := character'last; 

Ma question est 1) Que contient C1 et C2 selon le code ci-dessus?

S'il vous plaît faire excuse si cela est vraiment silly.I n'avez pas un compilateur ada pour vérifier le contenu de cette variable

Cordialement Maddy

+1

Il est trivial de télécharger un compilateur Ada fonctionnant sous Windows ou Linux à l'adresse http://libre.adacore.com/libre. –

+0

À moins que le codeur ne fasse une sorte de fonction de mappage, ils ne voulaient probablement pas indexer le tableau par tous les caractères. Cela semble suspect –

Répondre

3

Les attributs 'first et 'last d'un type indiquent le premier et le dernier valeurs de la gamme couverte par le type. Dans ce cas, C1 est character'val(0) et C2 est character'val(255) (character is an 8-bit character type).

Vous pouvez en savoir plus sur ces "Attributs définis par la langue" dans Annex K du Ada 95 Reference Manual.

+0

Greg, je pensais que C1 représenterait le A et C2 serait Z.Ce petit morceau de code montrera: tandis que Array_not_Filled boucle Myarr (Ndx): = C1; C1: = Caractère succinct (C1); Ndx: = Character'succ (NDX); Array_not_Rempli: = non (C1 = C2); boucle d'extrémité; – maddy

+0

@Greg: Vous avez raison. Je vois dans la section 3.5.2 du manuel de référence où il définit 'Character' comme ayant 256 valeurs. –

+0

@maddy: 'character' contient plus que des lettres. Vous trouverez probablement que votre 'Myarr' a 256 éléments. –