Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.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 非法使用类型作为表达式_C_Compiler Errors_Libharu - Fatal编程技术网

C 非法使用类型作为表达式

C 非法使用类型作为表达式,c,compiler-errors,libharu,C,Compiler Errors,Libharu,我的源代码中有以下几行给出了错误 错误C2275:“HPDF_数组”:将此类型非法用作表达式 : 这是头文件中的实际代码: 如何解决此错误?此代码适用于我的编译器gcc 4.7.1,因此如果您仍然有问题,可能需要显示更多代码或信息: // content of this struct is irrelevant, so I just made a dummy struct struct _HPDF_Array_Rec { int dummy; }; typedef struct _H

我的源代码中有以下几行给出了错误

错误C2275:“HPDF_数组”:将此类型非法用作表达式 : 这是头文件中的实际代码:


如何解决此错误?

此代码适用于我的编译器gcc 4.7.1,因此如果您仍然有问题,可能需要显示更多代码或信息:

// content of this struct is irrelevant, so I just made a dummy struct
struct _HPDF_Array_Rec {
    int dummy;
};


typedef struct _HPDF_Array_Rec  *HPDF_Array;
HPDF_Array id;
问题中的代码所做的是将类型HPDF_数组定义为指向类型struct_HPDF_Array_Rec的指针,并实例化一个HPDF_数组,该数组是指向名为id的_HDPF_Array_Rec结构的指针

编辑:

代码仍然可以正常工作。我在谷歌上搜索了错误代码,得到了以下信息:


检查代码中是否存在此类错误。无论你在哪里做HPDF_数组->什么而不是id->什么

如果编译hpdf_pdfa.c文件时出错,请移动

HPDF_Array id;
指向HPDF_PDFA_GenerateIDHPDF_Doc pdf函数开头的行


<2.>看来,2.2.1分支是作为C++代码构建的,提交者没有注意到错误。在中继分支中,此错误已修复。

是否定义了_HPDF\u Array\u Rec?这是你的真实代码吗?不,这实际上是一个名为“libharu”的开源项目的一部分。我不认为这实际上是你问题的原因,但定义一个名为_HPDF_Array_Rec的符号是未定义的行为。我只是用更多的代码更新了我的问题,可能这会更清楚。对于同一个结构,可以使用typedefs吗?一个已定义,另一个未定义?
An expression uses the -> operator with a typedef identifier.
HPDF_Array id;