Bonjour,
En faisant des tests sur le cours du site, je tombe sur un code qui ne compile pas, sans pouvoir l’expliquer :
struct Temps {
unsigned heures;
unsigned minutes;
unsigned secondes;
};
int main()
{
struct Temps *pTemps = &(struct Temps) {.heures = 6, .minutes = 7, .secondes = 8};
int *pInt = &(int) 5;
return 0;
}
L’erreur se trouve sur la ligne 10 : message du compilateur gcc :
main.c: In function 'main':
main.c:10:14: error: lvalue required as unary '&' operand
int *pInt = &(int) 5;
^
Sans cette ligne, le code compile sans sourciller. Mais pourquoi cette différence. Ma question est purement théorique, oui. D’aucuns pourraient même dire "sans intérêt". N’hésitez pas à vous y intéresser cela dit Merci d’avance !
+0
-0