Articles of variables

Changer une variable environnementale via un programme C

Tout le monde sait comment modifier les variables d’environnement Linux via un programme C? Je ne veux pas changer les variables d’environnement copiées pour l’exécution de ce programme. Je veux pouvoir changer sa valeur depuis un programme C et ensuite, lors de l’exécution de la commande ‘env’ sous linux, je peux voir que sa valeur […]

Comment placer une variable à une adresse absolue donnée en mémoire (avec GCC)

Le compilateur RealView ARM C prend en charge le placement d’une variable à une adresse mémoire donnée à l’aide de l’atsortingbut variable at(address) : int var __atsortingbute__((at(0x40001000))); var = 4; // changes the memory located at 0x40001000 GCC a-t-il un atsortingbut de variable similaire?

Initialisation de la structure C avec variable

J’ai rencontré un problème qui, semble-t-il, ne fait l’object d’aucune norme C après C89, à l’exception de la suppression des limites d’initialisation des structures. Cependant, une erreur s’est produite lors de l’utilisation de l’IDE Open Watcom (pour le débogage), où le compilateur indique que l’initialiseur doit être une expression constante. Voici l’essentiel de ce qui […]

typedef et noms de variables

Ignorant pourquoi je voudrais faire cela, essayant simplement de comprendre ce qui se passe ici: Ce code comstack: #include typedef char byte; int main (void) { byte var_byte; int byte = 10; printf(“\n Test program: %d\n”, byte); } Mais si je change l’ordre dans lequel les variables sont déclarées, cela ne comstack pas. Cela ne […]

Déclarations de variable C après l’en-tête de la fonction dans la définition

Lors de la lecture du code source de FreeBSD (voir: lignes 158-173 de radix.h), j’ai trouvé des déclarations de variables qui suivaient le “titre de fonction” dans la définition. Est-ce valide dans ISO C (C99)? quand cela devrait-il être fait dans le code de production au lieu de simplement déclarer les variables dans “l’en-tête de […]

Les variables statiques en C sont-elles réallouées chaque fois que la fonction parent est appelée?

Supposons que j’ai une variable statique déclarée à l’intérieur d’une fonction en C. Si j’appelle cette fonction plusieurs fois, la variable statique est-elle réallouée en mémoire chaque fois que la fonction est appelée? Si elle est réaffectée, pourquoi la dernière valeur est-elle toujours conservée? Exemple: void add() { static int x = 1; x++; printf(“%d\n”,x); […]

Changer la variable de GRUB en utilisant un langage C

Je me demandais s’il était possible pour moi d’écrire un programme C pour changer la valeur des variables de GRUB. Je dois écrire un programme capable de redémarrer mon ordinateur sous un autre système d’exploitation, par exemple: Je suis sur Suse1 programme change la variable de GRUB et redémarre automatiquement. Je suis sur Suse Disk2 […]

Comment les variables statiques portant le même nom dans différentes fonctions sont-elles identifiées par le système?

Autant que je sache, on peut avoir deux variables statiques du même nom dans des fonctions différentes? Comment sont-ils gérés par le compilateur et la table des symboles? Comment leurs identités sont-elles gérées séparément?

Pointeur suivant renvoyé par malloc (0)

J’essaie de comprendre une partie du code. Je laisse de côté une grande partie du code afin de simplifier l’explication et d’éviter toute confusion inutile. typedef void *UP_T; void FunctionC(void *pvD, int Offset) { unsigned long long int temp; void *pvFD = NULL; pvFD = pvD + Offset; temp = (unsigned long long int)*(int *)pvFD; […]

Comment retourner un nom de variable et affecter la valeur de la variable retournée en c

Je souhaite utiliser une variable dynamic dont la valeur variera pendant l’exécution. par exemple char * aVar = “ABC”; char * bVar = “DEF”; char * cVar = “XYZ”; char *dVar = NULL; dVar = foo1(); print dVar; foo1 appelle en interne foo2 , ce qui devrait renvoyer les noms de variables (comme “aVar” , […]