5

在以下示例中:

void foo (double *ptr)
{
     const double * restrict  const restr_ptr=ptr;
}

我收到此错误:

error: expected a ";"      const double * restrict  const restr_ptr=ptr;
                                                      ^

我用 -std=c99 编译,使用 gcc 3.4

有任何想法吗?

4

1 回答 1

9

在 C++ 中,restrict不是关键字(Microsoft extensions除外)。这并不意味着它在 C 中的作用。看起来好像您尝试将 C99 模式应用于 C++ 编译器。使用 C 编译器编译 C 代码,使用 C++ 编译器编译 C++。两种语言都不是另一种语言的子集。

于 2009-09-08T18:15:26.533 回答