c语言struct后面没有结构体(c语言struct结构体定义)-捕鱼10元起上10元下

什么是c语言中的struct?

c语言中的struct(结构体)是一种自定义的数据类型,它可以包含多个不同类型的成员变量,这些成员变量将在内存中依次存储。struct 的定义通过声明一个结构体标签来完成,标签后面可以跟随一组成员变量的声明,这些成员变量可以是基本数据类型,也可以是其他结构体类型。

struct后面没有结构体是什么意思?

当在c语言中使用struct关键字后面没有紧接着跟随结构体内容时,通常是在定义一个结构体变量或创建一个指向结构体的指针。在这种情况下,编译器会使用事先定义的结构体标签来分配相应的内存空间。如果没有定义结构体标签,编译器将无法确定要分配多少内存,因此会报错。

使用struct后面没有结构体的示例

下面是一个使用struct后面没有结构体的示例:


struct person { // 定义一个结构体标签
char name[20];
int age;
};

int main() {
struct person p1; // 定义一个结构体变量p1
struct person *ptr; // 定义一个指向结构体的指针ptr

ptr = &p1; // 将指针ptr指向p1

// 访问结构体成员
strcpy(ptr->name, "john");
ptr->age = 25;

printf("name: %s, age: %d\n", ptr->name, ptr->age);

return 0;
}

在上面的示例中,我们首先使用struct关键字定义了一个结构体标签person,然后在main函数中定义了一个结构体变量p1和一个指向结构体的指针ptr。接下来,我们使用指针ptr访问了结构体成员name和age,并分别给它们赋值。最后,我们使用printf函数将结果输出到屏幕上。

通过上面的示例,我们可以看到,即使在struct后面没有紧跟着结构体内容,我们仍然可以定义结构体变量或创建指向结构体的指针,并且能够通过指针访问结构体的成员。

本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/cyytrrcy1.html

郑重声明:

本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

我们不承担任何技术及捕鱼10元起上10元下的版权问题,且不对任何资源负法律责任。

如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。

如有侵犯您的捕鱼10元起上10元下的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!

(0)
上一篇 2023年7月26日 下午11:48
下一篇 2023年7月26日 下午11:48

猜你喜欢

网站地图