Style de C particulièrement opaque
Bonjour, simple programmeur en C pour des développements modestes, j'ai trouvé en étudiant le source d'un programme de minimisation un style de programmation très étrange, avec des instructions quasiment absurdes comme:
Code:
1 2 3 4
| double rw[10000],pf[10000];
double f[10],g[1000],x[1000],xl[1000],xu[1000],param[12];
......
fonc(..,&*f,&*g,&*x,&*xl,&*xu,....) |
et aussi
Code:
1 2 3
| if (*g != *g) {
......
} |
La raison de telles instructions syntaxiquement correctes me semble très obscure, et pourtant, l'insertion de tests sur l'expression (*g != *g) montre que le résultat n'est pas toujours faux.
Existe-t-il une explication de ce comportement?
Par ailleurs, le programme se compile et fonctionne correctement, mais son analyse est un défi.