我们正在认真地处理C项目,我们已经下载并使用了标题dirent.h
,问题是该代码已在我的队友便携式计算机上成功编译,但在我的笔记本中无法编译,告诉我这个:In file included from utils.c:6:0: dirent.h: In function '_wopendir': dirent.h:383:28: error: missing binary operator before token "(" #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) ^ dirent.h:405:28: error: missing binary operator before token "(" #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) ^ dirent.h:413:5: warning: implicit declaration of function 'wcsncpy_s' [-Wimplicit-function-declaration] wcsncpy_s (dirp->patt, n+1, dirname, n); ^
我搜索了问题,发现这是一个前置错误,目前在#if我试图添加#define WINAPI_FAMILY_PARTITION(分区),但是它不起作用。
请向我建议一个成功编译它的解决方案,并且Windows版本会影响预处理吗?
我们正在急切地从事C项目,我们已经下载并使用了头文件dirent.h,问题是代码已在我的队友笔记本电脑上成功编译,但在我的笔记本电脑上却无法编译,...
WINAPI_FAMILY_PARTITION
在<winapifamily.h>
中定义,可能包含在<windows.h>
中。有关更多说明,请参见this question,但是Windows的复杂性在很大程度上与编译问题无关。您可能想在<windows.h>
之前加入<dirent.h>
?