我将对此相当含糊,我很抱歉。这是家庭作业,我想学点东西,所以我不是真的想要答案,而是想要一个解释。问题是
What is the datatype of thisThing这不是实际的代码,而是一个类似的示例
int* (*thisThing[])(int*, int*) = {someFunction1, someFunction2}据我所知,thisThing的“数据类型”只是一个整数。然而,我从未见过函数返回类型被称为“数据类型”。这是有原因的吗?我知道在C中有指向函数的指针;这些指针与变量指针没有区别吗?任何解释都是非常感谢的!
发布于 2012-07-11 01:33:46
thisThing的“数据类型”只是一个整数
它实际上是一个函数指针数组,其中指向的函数是:
int *fun(int *, int *);你应该调查一下spiral rule。
发布于 2012-07-11 01:36:56
thisThing是一个指向的指针数组(函数接受两个指向整数的指针作为参数,并返回一个指向整数的指针)。你可以从"K&R“C书中pl.read复杂声明的章节。
发布于 2012-07-11 01:41:02
变量a是一个int
int a;int数组中的变量b
int b[] = {3, 4};变量c是指向int的指针
int *c = &a;您还可以组合类型,例如,d是指向int的指针数组
int *d[] = {c, b}变量e是指向返回int的函数的指针,并将指向int的指针作为单个参数:
int (*e)(int*);那么,thisThing的类型是什么呢?显然不是简单的int..。
int* (*thisThing[])(int*, int*) = {someFunction1, someFunction2}https://stackoverflow.com/questions/11418727
复制相似问题