错误:预期声明说明符或“list_node”之前的“...”

2024-01-06

我有一个 Catalog.h 文件

typedef struct node* list_node;
struct node
{
    operationdesc op_ptr;
    list_node next;
};

和一个 parser.h 与此

#include "catalog.h"

int parse_query(char *input, list_node operation_list);

两个标头都有#ifndef, #define, #endif。 编译器给我这个错误:expected declaration specifiers or ‘...’ before ‘list_node’在 parse_query 行上。 怎么了? 我尝试将 typedef 放入 parser.h 中,结果很好。当 typedef 位于catalog.h 中时,为什么会出现此错误?


错误是这样的(来自您的评论):

我在catalog.h中有一个#include“parser.h”。我把它删除了,现在可以正常编译了...

假如说#include "parser.h"在 typedef 之前catalog.h,并且您有一个源文件,其中包括catalog.h before parser.h,那么此时编译器包含parser.h,typedef 尚不可用。最好重新排列头文件的内容,这样就不会出现循环依赖。

如果这不是一个选项,您可以确保包含这两个文件的任何源文件都包含parser.h首先(或唯一)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

错误:预期声明说明符或“list_node”之前的“...” 的相关文章

  • 我如何理解这个 C 类型声明?

    double bar int double double double double 在查看讲座幻灯片时 我发现了留给学生的练习 用简单的英语来说 什么是类型bar在这个 C 声明中 Please帮助我解决这个问题 我什至不知道从哪里开始
  • FileStream 构造函数和默认缓冲区大小

    我们有一个使用 NET 4 用 C 编写的日志记录类 我想添加一个构造函数参数 该参数可以选择设置文件选项 WriteThrough http msdn microsoft com en us library system io fileo
  • 如何在 C# / .NET 中创建内存泄漏[重复]

    这个问题在这里已经有答案了 可能的重复 托管代码中是否可能存在内存泄漏 特别是 C 3 0 https stackoverflow com questions 6436620 is it possible to have a memory
  • 平滑滚动.net 表单

    您好 我正在 net 中使用表单 并且在运行时动态添加大量链接标签 我将这些链接标签添加到面板并将该面板添加到 winform 当链接标签的数量增加时 表单会显示一个自动滚动条 垂直 现在 当我使用自动滚动向下滚动时 表单在滚动时不会更新其
  • EF Core 通过完全替换断开集合导航属性的更新

    使用 EF Core 5 0 我有一个 SPA 页面 可以加载Group实体及其集合Employee来自 API 的实体 var groupToUpdate await context Groups Include g gt g Emplo
  • 根据 N 个值中最小的一个返回不同的结果

    不确定如何使标题更具描述性 所以我只是从一个例子开始 我使用下面的代码位 它从枚举中选择一个方向 具体取决于四个轴中哪一个与给定方向相比形成最小角度 static Direction VectorToDirection Vector2 di
  • 如何获取 QTableView 的标题列表?

    我有一个QTableView我的对话框中的对象 我需要访问该表的水平标题并将它们放入QStringList object 尽管进行了大量搜索 但我在 Qt 文档中找不到如何获取此标头列表 编辑 我发现的最接近的地方是this https w
  • 单例模式和 std::unique_ptr

    std unique ptr唯一地控制它指向的对象 因此不使用引用计数 单例确保利用引用计数只能创建一个对象 那么会std unique ptr与单例执行相同 单例确保只有一个实例属于一种类型 A unique ptr确保只有一个智能指针到
  • Visual Studio Code:如何配置 includePath 以获得更好的 IntelliSense 结果

    我是使用 Visual Studio Code 的完全初学者 我不知道我在做什么 我已经四处搜索 也许还不够 但我找不到像我这样的人如何配置的简单解释c cpp properties json每当我单击带有绿色波浪线下划线的行旁边的黄色灯泡
  • std::forward_as_tuple 将参数传递给 2 个构造函数

    我想传递多个参数以便在函数内构造两个对象 以同样的方式std pair
  • 如何在服务器端按钮点击时关闭当前标签页?

    我尝试在确认后关闭当前选项卡 因此我将以下代码放在确认按钮的末尾 但选项卡没有关闭 string jScript ClientScript RegisterClientScriptBlock this GetType keyClientBl
  • AES 输出是否小于输入?

    我想加密一个字符串并将其嵌入到 URL 中 因此我想确保加密的输出不大于输入 AES 是可行的方法吗 不可能创建任何始终会创建比输入更小的输出的算法 但可以将任何输出反转回输入 如果您允许 不大于输入 那么基本上您只是在谈论同构算法alwa
  • 如何通过 JsonConvert.DeserializeObject 在动态 JSON 中使用 null 条件运算符

    我正在使用 Newtonsoft 反序列化已知的 JSON 对象并从中检索一些值 如果存在 关键在于对象结构可能会不断变化 因此我使用动态来遍历结构并检索值 由于对象结构不断变化 我使用 null 条件运算符来遍历 JSON 代码看起来像这
  • 每个租户的唯一用户名和电子邮件

    我正在使用以下代码编写多租户应用程序ASP NET Core 2 1 我想覆盖默认的与用户创建相关的验证机制 目前我无法创建多个具有相同的用户UserName My ApplicationUser模型有一个名为TenantID 我想要实现的
  • 是否有相当于 Clang/LLVM 的 .spec 文件,在哪里可以找到参考?

    The gcc驱动程序可以配置为使用特定的链接器 特定的选项和其他细节 例如覆盖系统头 specs files 当前 截至撰写本文时 GCC 版本 4 9 0 的手册此处描述了规范文件 https gcc gnu org onlinedoc
  • ASP.NET MailMessage.BodyEncoding 和 MailMessage.SubjectEncoding 默认值

    很简单的问题 但我在 MSDN 上找不到答案 查找 ASP NET 将用于的默认值 MailMessage BodyEncoding and MailMessage SubjectEncoding 如果你不在代码中设置它们 Thanks F
  • 如何在 DropDownList 中保留空格 - ASP.net MVC Razor 视图

    我在视图中通过以下方式绑定我的模型 问题是我的项目文本是格式化文本 单词之间有空格 如下所示 123 First 234 00 123 AnotherItem 234 00 123 Second 234 00 我想保留此项目文本中的空格 即
  • 矩阵到数组 C#

    这将是转换方阵的最有效方法 例如 1 2 3 4 5 6 7 8 9 into 1 2 3 4 5 6 7 8 9 in c 我在做 int array2D new int 1 2 3 4 5 6 7 8 9 int array1D new
  • C++0x中disable_if在哪里?

    Boost 两者都有enable if and disable if 但 C 0x 似乎缺少后者 为什么它被排除在外 C 0x 中是否有元编程工具允许我构建disable if按照enable if 哦 我刚刚注意到std enable i
  • 使我的 COM 程序集调用异步

    我刚刚 赢得 了在当前工作中维护用 C 编码的遗留库的特权 这个dll 公开使用 Uniface 构建的大型遗留系统的方法 除了调用 COM 对象之外别无选择 充当此遗留系统与另一个系统的 API 之间的链接 在某些情况下 使用 WinFo

随机推荐

  • 在 yii2 中对多个表使用连接

    我正在使用 yii2 我有 3 个表 帖子 粉丝 评论 我想使用 joinWith 来获取帖子及其评论以及帖子和评论的粉丝名称 在粉丝表中 我写的是这个查询 pre facebook posts find gt joinwith fans
  • 制作方形图像

    如何在不使用任何第 3 方库 仅限 Net 框架 的情况下 在 C 中将图像重新采样为正方形 并用白色背景填充 Thanks 这实际上可以很容易地完成 public static Image PadImage Image originalI
  • GAE 增加电子邮件收件人限制

    我的付费 App Engine 限制我只能发送 100 封邮件 我找不到任何文档来增加该限制 此外 它还表示 超过 100 封邮件将收取 0 00 100 美元的费用 我也找不到有关计费文档的任何信息 关于如何发送超过 100 封邮件并收取
  • 带有时区的节点 cron

    我有一个node http nodejs org v0 7 3 pre 服务器节点 cron https github com ncb000gt node cron 0 3 2 和节点时间 https github com TooTallN
  • android 3.0:JS scrollTop 不适用于 chrome/webview

    我已经通过 webView 编写了一个应用程序包装 它在我的 Milestone2 2 2 上按预期工作但滚动功能在 3 0 的 chrome 上不起作用 在 FF 中工作 既不是 dom scrollTop XXX 也不是 jquery
  • 如何在 WIX 中包含 msi/Setup.exe 的先决条件

    我正在尝试将我的包合并到一个安装 EXE 文件中并将其上传到 Internet 我创建了一个 Microsoft 引导程序 其中包含带有项目的 Setup exeMSI http en wikipedia org wiki Windows
  • Java Spring:通过 REST API 向客户端实时更新状态

    我正在 Java Spring 中开发一个 Web 应用程序 我希望用户能够从前端上传 CSV 文件 然后查看导入过程的实时进度 导入后他应该能够搜索单个条目从导入的数据 导入过程包括实际上传文件 通过 REST API POST 请求发送
  • 使用意图发送操作从 Android 应用程序共享图像是行不通的:(

    i m use Intent sharingIntent new Intent Intent ACTION SEND Uri screenshotUri Uri parse file res drawable u png sharingIn
  • 如何在Mysql Workbench GUI中查看表内容?

    如何在 Mysql Workbench GUI 中查看表内容 我的意思是 不是从命令行 首先从主屏幕打开到服务器的连接 SQL IDE 然后使用架构树中的上下文菜单来运行仅从所选表中选择行的查询 附加的限制是为了避免意外读取太多行 可以在首
  • 将消费计划上的 Azure Function App 设置为 64 位

    您可用于功能的新 消耗 层计划不允许您通过门户更改进程位数 我可以通过其他方式将进程翻转为 64 位 因为 DocDB 访问需要它 您可以通过 API 进行设置 但请注意 直到您看到该选项显示在门户中之前 它才得到正式支持 这是一个简单的方
  • iPhone Safari:滚动 html 容器内的列表

    我对此主题进行了大量研究 但尚未找到令人满意的答案 如何在其他 html 内容中制作可滚动列表 iPhone SDK 仪表板列表 如果我在 html 正文中创建一个列表并尝试滚动整个页面就会滚动 我知道有这种 双指 滚动 但这不是我想要的
  • 如何动态改变html元素的值?

    我试图在页面加载时在 UI 上加载初始参数虚拟数据 以便我可以使用真实数据进行自定义 因此在下面的代码中 当我在 UI 上更改并发送请求时 它总是采用最初加载到页面的 memberid 任何想法代码有什么问题吗 主要 html
  • 如何在opencart产品中设置自定义价格?

    我已经下载了最新版本的opencart 3 0 2 0 我的产品的定价取决于各种选项 即 尺寸 颜色 数量 对于数量 有没有默认设置价格范围的功能 例如1 500件一个价格 从501 1000折扣价 我的产品是腕带 所以我根据text他们想
  • 在技​​术绘图中绘制距离箭头

    我想在我的一幅图中指出距离 我想到的是他们在技术图纸中的做法 显示一个双头箭头 其旁边的距离为文本 Example from matplotlib pyplot import hlines 7 0 2 linestyles dashed h
  • 如何使用 ImageSharp 清除图像的 EXIF 数据?

    我发现一个 GitHub 问题 显示如何通过将其 ExifProfile 设置为 null 来删除图像的 exif 数据 SixLabors ImageSharp Image image Image Load imagePath remov
  • Kill -3 或 jstack :有什么区别?

    我想获取在 jboss 服务器上运行的 Web 应用程序的线程转储 我为我的问题找到了两个解决方案 使用unix命令 kill 3 使用JDK中存在的jstack工具 谁能向我解释这两种方法之间的区别 提前致谢 The jstack命令可以
  • 为什么 html 标签(s、strong)在 jasper 报告中不起作用?

    我添加了静态文本 html 标签 但单击预览后粗体和删除线无法正确显示 此外 当从数据库加载数据时 它无法正确显示 有什么解决办法吗 Jasper Report不支持所有html标签 支持的标签定义在样式文本示例 http jasperre
  • 导出的 pdf 中缺少 Jupyter 笔记本 matplotlib 数字

    在 jupyter 笔记本中生成 pdf 时 一切都很好 但我想将内联数字保留在 pdf 以及笔记本中 这是我的代码 matplotlib notebook import matplotlib pyplot as plt import nu
  • Xcode 7.3 - 警告未显示且无法搜索项目

    自从我升级到 Xcode 7 3 以来 我注意到在搜索工作区时总是 没有结果 并且警告窗格中也没有显示任何警告 有时它会工作几分钟然后再次死机 重新启动我的电脑 Xcode 然后重新安装都没有帮助 还有其他人遇到过这种情况或找到解决方案 解
  • 错误:预期声明说明符或“list_node”之前的“...”

    我有一个 Catalog h 文件 typedef struct node list node struct node operationdesc op ptr list node next 和一个 parser h 与此 include