2012-11-14 5 views
1

Je reçois une erreur "Expression illégale" lors de la création d'un tableau const char de const chars.Pascal: Const Array Of Const

Program Foo; (*excerpt*) 
Const 
    X : Char = 'X'; 
    O : Char = 'O'; 
    P : Array [1..2] of Char = (X,O); 
Begin 
    (*stuff*) 
End. 

Répondre

3

Je tape ceci à partir d'un périphérique qui n'a pas Pascal. Donc, je ne peux pas vérifier, mais cela fonctionne probablement:

Const 
X = 'x'; 
O = 'o'; 
P : array[1..2] of char = (o,x); 
+0

La langue est insensible à la casse. Tu as écrit la même chose que j'ai déjà. –

+0

Non, je n'ai pas spécifié le type des constantes, ce qui fait la différence. Essayez-le et faites le moi savoir si cela fonctionne. –

+0

Oh, vous avez. En fait, j'ai fait «X» et «O» sans typage auparavant, mais je voulais savoir pourquoi leur donner des types provoque une erreur. –

1

Vous pouvez également avoir écrit

Const 
X : Char = 'X'; 
O : Char = 'O'; 
P : Array [1..2] of Char = ('X', 'O'); 

pour obtenir le même effet