Non, l'exemple de code n'est pas une syntaxe valide. Une tentative de compilation montrera cela.
Réécrire dans ce que vous semblez demander est l'exemple suivant, vous demandez "comment fait-on référence au pointeur (struct anonyme) plus tard dans le programme?"
int random_function(int random_variable) {
// Supposed Anonymous Struct Pointer, but invalid syntax.
struct struct_name *;
}
Il semble que vous mélangez ce qui est anonyme. Votre exemple suggère que vous pensez que la structure a un nom et que la variable est anonyme, ce qui, si cela pouvait arriver, la rendrait inaccessible.
Un exemple correct de Anonymous Struct pointeur serait
int random_function(int random_variable) {
struct /* no structure tag here */ {
int a;
int b;
} *variable_name;
variable_name = malloc(sizeof(variable_name));
variable_name->a = 1;
variable_name->a = 2;
return variable_name->a;
}
Ici vous pouvez voir la structure n'a pas d'étiquette, qui le rend une structure anonyme. variable_name
devient un pointeur vers une structure anonyme. La variable est accessible de la manière habituelle.