c - typedef 结构定义末尾的变量声明
问题描述
我们知道可以在结构定义的末尾声明结构对象,如下所示:
struct vertex
{
float x,y,z;
}v1;
v1
在使用 typedef 结构时,这样的对象声明是否可能?
typedef struct vertex
{
float x,y,z;
} vertex;
现在是否必须单独声明对象
vertex v1;
在这种情况下,它们不能附加在结构定义的末尾吗?
解决方案
如果您使用 'storage class' typedef
,那么在结构之后定义的名称就是 typedef 名称——结构类型的别名。所以,vertex
是一个类型名称。定义类型名称时,不能同时定义任何变量。
推荐阅读
- python - Kivy ToggleButtons 没有根据不同的窗口大小进行调整
- angular - Ionic 3 popover 无法添加标签或跨度标签
- c# - 如何遍历 C# 中的 3 个动态对象数组来解析一些 JSON 字符串?
- vba - .Findnext 不尊重范围集
- python-3.x - ValueError:预期的 2D 数组,得到 1D 数组:
- ios - ARKit 图像识别和文字显示
- wpf - 如何禁用 WPF 中某些视图的汉堡菜单?
- c# - 如何使用 C# LINQ 查询 db 以获取连接时的两个相关字段,其中一个与结果查询不同?
- swift - 适用于 iOS 的 SMP SDK 用于在 Swift 上进行开发
- javascript - 反应原生道具