Bonjour,

Je cherche à exploiter arge en dehors du main.

A cette fin, j'ai déclaré une variable globale :

Dans le main, j'ai affecté la valeur de arge à global_env comme ceci :
ça fonctionne, hors de main la variable global_env contient bien la même adresse que arge (vérifié avec printf("%p",variable)

Mais j'ai le warning suivant à la compilation :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
warning: assignment from incompatible pointer type [enabled by default]
rien d'étonnant, le prototype de arge dans main étant *arge[] et moi je ne met pas les crochets.
Si je les met, ça ne compile pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
warning: array ‘global_env’ assumed to have one element [enabled by default]
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
error: ‘global_env’ has an incomplete type
ce qui ne me parait pas aberrant, un tableau devant avoir une taille.

Quelle est la bonne pratique ?

Merci d'avance.