在以下示例中:
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
任何想法?
答案 0 :(得分:9)
在C ++中,restrict
不是关键字(Microsoft extensions除外)。它并不意味着它在C中做了什么。看起来好像你试图将C99模式应用于你的C ++编译器。使用C编译器编译C代码,并使用C ++编译器编译C ++。这两种语言都不是另一种语言的子集。