gpt4 book ai didi

c - C编程中Struct Tag名称的用途是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 00:20:16 25 4
gpt4 key购买 nike

我想知道 struct tag_name 在 C 编程中的实际使用。在不使用 tag_name 的情况下,我也得到了与使用 tag_name 一样的输出。我想要这个过程背后的确切原因。

例如:

//With tag_name st1
struct st1 { int x; char c;}x={100,'a'},y={70,'e'};

//Without any tag_name
struct { int x; char c;}x={100,'a'},y={70,'e'};

printf("x.x= %d \t x.c= %c \n",x.x,x.c); //Output: x.x=100 x.c=a
printf("y.x= %d \t y.c= %c \n",y.x,y.c); //Output: y.x=70 y.c=e

最佳答案

第一种情况:

struct st1 { 
int x;
char c;
} x = {100, 'a'}, y = {70, 'e'};

您声明了一个名称为 struct st1 的类型,并且您还创建了两个该类型的对象,xy。所以你可以随时创建这种类型的对象,就像这样:

struct st1 obj1;

但是在第二种情况下:

struct { 
int x;
char c;
} x = {100, 'a'}, y = {70, 'e'};

您创建了一个 struct 和两个对象,xy,但是您无法访问这个struct 再次。这意味着您不能创建任何这种类型的新对象。

关于c - C编程中Struct Tag名称的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44180120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com