【发布时间】:2017-05-13 05:08:16
【问题描述】:
我得到了我正在分析的以下代码,我不太确定 typedef 结构和函数中的结构。 在全局中,以下代码是:
typedef struct
{
float width, height, start;
unsigned int *pixmap;
}arguments;
但是当我查看下面同一个程序中的一个函数时,我会发现:
struct arguments{
float start;
float width;
float height;
unsigned int *pixmap;
};
我的问题是,既然我已经在全局中声明了它,是否需要在函数中添加这个struct arguments?
【问题讨论】:
-
你可以使用其中任何一个,只要你知道成员的顺序是不同的。
-
“当我查看同一个程序中的函数时”。你是什么意思?我猜
struct没有在函数内部定义(可能是,但我猜这不是你的意思)。您可能是指与使用它的函数在同一个文件中。如果是这样,那么答案是“视情况而定”。这取决于typedef的定义位置以及函数是否可以看到它。我们没有您的完整代码上下文,无法判断是否是这种情况。
标签: c struct typedef difference