首先,我想说我完全是C或C ++中的菜鸟。我正在努力了解编译是如何工作的,语言是如何工作的等等。这次我在发布这里之前已经找了几个小时的解决方案。我希望你能够帮助我,即使它似乎是一个非常容易找到的解决方案。
在这里。
我正在尝试编写一个makefile.Win32文件,但是我遇到了这些错误:
e:\progs\c\vanitygen-master\winglue.h(47) : error C2062: type 'char' unexpected
e:\progs\c\vanitygen-master\winglue.h(47) : error C2143: syntax error : missing ';' before '{'
e:\progs\c\vanitygen-master\winglue.h(47) : error C2447: '{' : missing function header (old-style formal list?)
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\cl.EXE"' : code retour '0x2'
Stop.
这是winglue.h文件( - >指向第47行)
#include <windows.h>
#include <tchar.h>
#include <time.h>
#define INLINE
#define snprintf _snprintf
struct timezone;
extern int gettimeofday(struct timeval *tv, struct timezone *tz);
extern void timeradd(struct timeval *a, struct timeval *b,
struct timeval *result);
extern void timersub(struct timeval *a, struct timeval *b,
struct timeval *result);
extern TCHAR *optarg;
extern int optind;
extern int getopt(int argc, TCHAR *argv[], TCHAR *optstring);
extern int count_processors(void);
#define PRSIZET "I"
static inline char *
/* --> */ strtok_r(char *strToken, const char *strDelimit, char **context) {
return strtok_s(strToken, strDelimit, context);
}
#endif /* !defined (__VG_WINGLUE_H__) */
我希望你们能帮助我! 我在Win 7 64位计算机上使用Visual Studio C ++ 2010 Express。
编辑:如果知道它有用,我正在运行全新的软件安装。
答案 0 :(得分:0)
简单的解决方法是使它成为一个定义,你用相同的顺序调用具有相同参数的不同函数,返回结果。
但至于你的问题的原因,它可能是<windows.h>
中的一个愚蠢的定义,它有很多定义它不应该。我猜它的内联。请尝试__inline__
。