Variable avec char nom

Comment puis-je créer une variable en C avec un nom spécifié dans la table char?

quelque chose comme:

char name[]; gets(name[]); int name[] = 0; 

J’espère que vous savez ce que je veux dire.

C, contrairement aux langages de script tels que Python ou Ruby auxquels vous êtes peut-être habitué, est compilé et non interprété. Au moment de l’exécution, C n’a pas de table de recherche de noms de variables comme les langages de script susmentionnés, ces informations sont supprimées au moment de la compilation et, par conséquent, aucun nom calculé au moment de l’exécution ne peut être transformé en une adresse.

En fin de compte, comme vous le décrivez, ceci est impossible dans les langages compilés. Cependant, nous avons une alternative, trouvée dans les Collections, telles que les vecteurs et les HashMaps, qui stocke les informations de nommage au moment de l’exécution, nous permettant d’y accéder. Encore une fois, malheureusement, C n’a pas d’implémentation native de celles-ci, mais il en existe.

Tu ne peux pas. Du moins pas avec les fonctionnalités du langage C vanille. Mais rappelez-vous, C a des indicateurs qui peuvent parfois faire quelque chose de similaire.

Si les pointeurs ne sont pas ce dont vous avez besoin, vous devrez implémenter une carte de hachage . Les langages de programmation de niveau supérieur les ont intégrés, mais pas le langage C.

Vous pourriez trouver une bibliothèque, mais si vous faites cela pour apprendre, je recommanderais de la mettre vous-même en œuvre.

C’est peut-être ce que vous voulez. C possède une table de consultation sous la forme de la table de préprocesseur dans laquelle vous définissez les mots-clés et le texte qui les accompagne, qui sont ajoutés au moment de la compilation. Ainsi, vous pouvez transmettre un nom ou ce que vous voulez en tant qu’argument au programme lors de la compilation et si vous le codez correctement, il apposera ce nom pendant la partie pré-processeur de la phase de compilation sur votre variable. La phase de préprocesseur est ce qui regarde votre #include en haut, ainsi que des choses telles que #ifndef … # def, #if … # endif et ainsi de suite, exemple du préprocesseur C