Recherche la signification d'expressions en C
Je recherche la signification
(et si possible l'équivalent en Delphi)
des expressions suivantes écrites en C :
1a) reg int var1
1b) reg int *var1
1c) reg int **var1
1d) static unsb tmp[15]
2a) var1 ^ var2
2b) var1 ^ *var2++
3) ~var1
4) var1 = ((long **) var2)
5) var1 ^= (*stp++)[*var2++]
6) *var1++ = var2
Re: Recherche la signification d'expressions en C
Code:
1 2 3
| 1a) reg int var1
1b) reg int *var1
1c) reg int **var1 |
Jamais vu de trucs pareils en C.
Code:
1d) static unsb tmp[15]
Ne pas déclarer le type de la variable est obsolète (par défaut c'est int).
STATIC a deux significations selon l'endroit où elle est déclarée :
- dans une fonction : cela rend la variable persistante. A chaque appel de la fonction, elle se "souvient" de sa dernière valeur.
- en-dehors d'une fonction : indique au lieur de pratiquer un câble interne (autrement dit, ne pas exporter le symbole aux autres modules).
Le genre de syntaxe à éviter absolument. Tu affectes, suivi d'une incrémentation. C'est illisible et très souvent une erreur.
Le reste a déjà été dit précédemment ;)
Re: Recherche la signification d'expressions en C
Citation:
Envoyé par Anomaly
Code:
1d) static unsb tmp[15]
Ne pas déclarer le type de la variable est obsolète (par défaut c'est int).
Cette variable à un type c'est unsb qui doit etre defini dans un fichier.
Re: Recherche la signification d'expressions en C
Citation:
Envoyé par Driden
Cette variable à un type c'est unsb qui doit etre defini dans un fichier.
C'est exact, je devrais regarder avec plus d'attention.