6

我正在尝试使用 GCC++ 在我的(最新的)Centos 6.5 上从 Github 编译一些代码。
但是当我尝试编译代码时,我收到下面的错误消息。

下面一行是失败的:

...
#define __STDC_FORMAT_MACROS 1

...
#include <inttypes.h>

...
inline std::string i64tostr(int64_t n)
{
  return strprintf("%"PRId64, n);   // <-- errors here.
}

...

错误是:

error: expected ')' before 'PRId64

可能是什么问题,我该如何解决?

编辑 1:这是代码行失败。
https://github.com/rat4/blackcoin/blob/master/src/util.h#L226

编辑2:用printf("%" PRId64, n);替换代码 (请注意额外的空间),如建议的答案中所建议的那样不起作用,(给出相同的错误消息)。

4

1 回答 1

0

看来,错误在某个外部。看 - http://ideone.com/dqeMTY - 我复制了你的代码,我之前弄错并错过了#符号define __STDC_FORMAT_MACROS 1,并且......我在附近也遇到了同样的错误PRId64。尝试在可疑行之前注释一半代码,然后再注释另一半,依此类推。

于 2014-09-23T09:53:12.127 回答