struct node{
int len;
char pk;
} x = {len:1,pk:‘s‘};
printf("%c%d",x.pk,x.len);
struct node{
int len;
char *pk;
} x[]={{2, "right"},{1,"false"}}, *p=&x[0];
提示:&x[0]
和 x
等价。
printf("%s",(++p)->pk);
printf("%c",*(++p)->pk);
printf("%c",*(++((++p)->pk)));
关于 printf("%s",(++p)->pk);
的解释:
1、(++p)
取下个位置的值,即:{1,"false"}
2、(++p)->pk
取下个位置的 pk
的值
typedef struct node{
int len;
char pk;
} Node;
Node *p = (Node*)malloc(sizeof(Node));
p->len = 1;
p->pk = ‘s‘;
printf("%d%c",p->len,p->pk);
还没想好怎么玩
原文:https://www.cnblogs.com/itxdm/p/C_language_struct_structure.html