Remarques

  1. La conversion automatique d'un identificateur ayant le type tableau empêche de désigner un tableau en entier, c'est pour cette raison que l'opérateur d'affectation ne peut affecter un tableau à un autre tableau :
    int t1[10];
    int t2[10];
    t1 = t2;     /*   le compilateur rejettera cette instruction   */
    
    Un telle affectation ne peut se réaliser qu'à l'aide d'une procédure qui réalisera l'affectation élément par élément.

  2. Un identificateur ayant le type tableau est converti en une valeur constante, on ne peut donc rien lui affecter :
    int *p;
    int t[10];
    t = p;      /*   interdit   */
    p = t;      /*   valide     */
    



L'existence des conversions sur les références aux tableaux va avoir deux conséquences importantes : la première concerne l'opérateur d'indexation et la seconde le passage de tableaux en paramètre.



Matthieu Moy 2017-02-08