Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 将函数作为参数传递时无效使用void表达式_C - Fatal编程技术网

C 将函数作为参数传递时无效使用void表达式

C 将函数作为参数传递时无效使用void表达式,c,C,我有一个函数叫做 GLOBAL char* GET_Enum(REC_NO recNo ) { ..... } 我还有一个函数,它把这个函数作为输入,如下所示 static void Dropdowns( char* param , char* title, char* (*enumFunction)(REC_NO), int maxRecNo)

我有一个函数叫做

GLOBAL char* GET_Enum(REC_NO  recNo )
{
  .....
}
我还有一个函数,它把这个函数作为输入,如下所示

static void Dropdowns( char* param , 
                       char* title, 
                       char* (*enumFunction)(REC_NO),
                       int maxRecNo)
{
 .....
} 
Dropdowns("test", "Location", GET_Enum, 3);
然后我这样调用这个函数

static void Dropdowns( char* param , 
                       char* title, 
                       char* (*enumFunction)(REC_NO),
                       int maxRecNo)
{
 .....
} 
Dropdowns("test", "Location", GET_Enum, 3);
但它没有编译,并给出以下错误:

 error: invalid use of void expression

我已经研究了这些问题,哪些是相关的,但我仍然看不出我做错了什么?有什么想法吗?谢谢

看来您在其他地方有错误,或者给了我们错误的附加信息

代码(带说明)编译得很好,MSVC 2015

#include "stdafx.h"

static char* GET_Enum(char  recNo[14] )
{
    return NULL;
}

static void Dropdowns(char* param,
    char* title,
    char* (*enumFunction)(char[14]),
    int maxRecNo)
{
}
int main()
{
    Dropdowns("test", "Location", GET_Enum, 3);
    return 0;
}

============生成:1成功,0失败,0最新,0跳过==============

提供最小、完整和可验证的code@JacekCz这是我正在使用的一个框架,所以如果我给出完整的代码,它就没有多大意义。首先:what is GLOBAL,REC_NO.Sample不能在没有Thank@JacekCz的情况下编译只需将GLOBAL改为static,REC_NO is char[14]您发布的代码很好。关于void表达式的错误来自其他方面,您没有向我们展示。啊,我明白了,谢谢@Jacek