使用限制关键字时出错

发布于 2024-08-04 03:11:48 字数 342 浏览 7 评论 0原文

在以下示例中:

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

我收到此错误:

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

我使用 gcc 3.4 使用 -std=c99 进行编译

有什么想法吗?

In the following example:

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

I get this error:

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

I compile with -std=c99, using gcc 3.4

Any Ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

指尖上得阳光 2024-08-11 03:11:48

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

In C++, restrict is not a keyword (except for Microsoft extensions). It doesn't mean what it does in C. It looks as though you tried to apply C99 mode to your C++ compiler. Use a C compiler to compile C code, and use a C++ compiler to compile C++. Neither language is a subset of the other.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文