关于c语言中结构体的问题

没太看懂以下几句话的意思
x是结构体的一个变量,y是结构体中的一个表达式,第二句话就很有疑问,y中为什么会有成员

img

img

因为y的类为struct s,是一个结构s, 而结构是有成员变量的,y.m就是访问结构里面的成员变量的方式,这个y中有成员,是因为结构s事先就定义好了的原因,测试代码如下:

#include  <stdio.h>

struct s{
    int m;
}; 

int main(void){
    
    struct s y;
    
    y.m = 1;
    printf("y.m=%d\n",y.m);
    
    
    return 0;
} 

img

y的类型是结构体,y不是结构体的成员。

说半天,代码呢?