Bonjour,
existe-t-il un moyen d'initialiser les gros tableau statiquement en C, c'est a dire pouvoir dire que tout le tableau doit etre initialiser avec une valeur particuliere ou encore mieux pouvoir lui precisser la valeur de certains elements et initialiser le reste a une autre constante.
Sinon existe t il une extention gcc pour le faire ?
Merci
Matthieu
# peut être
Posté par Krunch (site web personnel) . Évalué à 3.
Sinon tu dois pouvoir faire ça avec un macro directement généré par le shell genre:
gcc -DBIG_TABLE=`for (( i=0; i < 1000 ; i++)) ; do echo -n '42, ' ; done` foo.c
et dans foo.c:
static int *big_table = { BIG_TABLE };
Ca doit aussi marcher dans un Makefile. Pour que quelques éléments soient initialisés différement, ben tu t'amuses à rajouter des if dans ton script shell. C'est pas très propre mais ça devrait marcher.
pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.
[^] # Re: peut être
Posté par Raphael Monrouzeau . Évalué à 4.
Si tu utilises un gcc (assez) recent il y a des operatieurs specialement prevu pour:
Et tu peux apres pour certaines cases ecraser leur valeur:
int my_tab[65536] = {
[0 ... 65535] = 32, // gcc seulement, ajout au C99
[32767] = 64, // portable, C99
[16384] = 64 //
};
Le tout tres bien documente dans info gcc.
[^] # Re: peut être
Posté par M . Évalué à 2.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.