列出 C 常量/宏

2024-05-04

有没有办法使GNU C 预处理器, cpp (或其他一些工具) 列出给定点上的所有可用宏及其值C file?

我正在寻找特定于系统的宏,同时移植一个已经精通 UNIX 的程序并加载一堆稀疏的 UNIX 系统文件。

只是想知道是否有比寻找定义更简单的方法。


我不知道文件中的某个位置,但使用:

$ touch emptyfile
$ cpp -dM emptyfile

转储所有默认值。对 C 文件执行同样的操作#include and #define其中的行也包括所有这些。我想您可以将文件截断到您关心的位置,然后执行相同的操作?

来自man page https://developer.apple.com/mac/library/documentation/Darwin/Reference/ManPages/man1/cpp.1.html:

-dCHARS
CHARS是由一个或多个以下字符组成的序列,并且前面不能有空格。其他字符由编译器正确解释,或者为 GCC 的未来版本保留,因此会被默默地忽略。如果指定行为冲突的字符,则结果未定义。

M
生成一个列表,而不是正常输出#define在预处理器执行期间定义的所有宏的指令,包括预定义的宏。这为您提供了一种查找您的预处理器版本中预定义内容的方法。假设你没有文件 foo.h,该命令

    touch foo.h; cpp -dM foo.h

将显示所有预定义的宏。

如果你使用-dM没有-E选项,-dM被解释为同义词-fdump-rtl-mach.

D
Like M除了两个方面:它不包含预定义的宏,并且它输出#define指令和预处理的结果。两种输出都进入标准输出文件。

N
与 D 类似,但仅发出宏名称,而不发出它们的扩展。

I
Output #include除了预处理结果之外的指令。

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

列出 C 常量/宏 的相关文章

  • 是否可以强制 XMLWriter 将元素写入单引号中?

    这是我的代码 var ptFirstName tboxFirstName Text writer WriteAttributeString first ptFirstName 请注意 即使我使用 ptFirstName 也会以双引号结束 p
  • C# 和 Javascript SHA256 哈希的代码示例

    我有一个在服务器端运行的 C 算法 它对 Base64 编码的字符串进行哈希处理 byte salt Convert FromBase64String serverSalt Step 1 SHA256Managed sha256 new S
  • 获取按下的按钮的返回值

    我有一个在特定事件中弹出的表单 它从数组中提取按钮并将标签值设置为特定值 因此 如果您要按下或单击此按钮 该函数应返回标签值 我怎样才能做到这一点 我如何知道点击了哪个按钮 此时代码返回 DialogResult 但我想从函数返回 Tag
  • 将数组向左或向右旋转一定数量的位置,复杂度为 o(n)

    我想编写一个程序 根据用户的输入 正 gt 负 include
  • UML类图:抽象方法和属性是这样写的吗?

    当我第一次为一个小型 C 项目创建 uml 类图时 我在属性方面遇到了一些麻烦 最后我只是将属性添加为变量 lt
  • 如何忽略“有符号和无符号整数表达式之间的比较”?

    谁能告诉我必须使用哪个标志才能使 gcc 忽略 有符号和无符号整数表达式之间的比较 警告消息 gcc Wno sign compare 但你确实应该修复它警告你的比较
  • 使闭包捕获的变量变得易失性

    闭包捕获的变量如何与不同线程交互 在下面的示例代码中 我想将totalEvents 声明为易失性的 但C 不允许这样做 是的 我知道这是错误的代码 这只是一个例子 private void WaitFor10Events volatile
  • 实时服务器上的 woff 字体 MIME 类型错误

    我有一个 asp net MVC 4 网站 我在其中使用 woff 字体 在 VS IIS 上运行时一切正常 然而 当我将 pate 上传到 1and1 托管 实时服务器 时 我得到以下信息 网络错误 404 未找到 http www co
  • Newtonsoft JSON PreserveReferences处理自定义等于用法

    我目前在使用 Newtonsoft Json 时遇到一些问题 我想要的很简单 将要序列化的对象与所有属性和子属性进行比较以确保相等 我现在尝试创建自己的 EqualityComparer 但它仅与父对象的属性进行比较 另外 我尝试编写自己的
  • 当 contains() 工作正常时,xpath 函数ends-with() 工作时出现问题

    我正在尝试获取具有以特定 id 结尾的属性的标签 like span 我想获取 id 以 国家 地区 结尾的跨度我尝试以下xpath span ends with id Country 但我得到以下异常 需要命名空间管理器或 XsltCon
  • 为什么#pragma optimize("", off)

    我正在审查一个 C MFC 项目 在某些文件的开头有这样一行 pragma optimize off 我知道这会关闭所有以下功能的优化 但这样做的动机通常是什么 我专门使用它来在一组特定代码中获得更好的调试信息 并在优化的情况下编译应用程序
  • C 预处理器库

    我的任务是开发源分析工具C程序 并且我需要在分析本身之前预处理代码 我想知道什么是最好的图书馆 我需要一些重量轻 便于携带的东西 与其推出自己的 为什么不使用cpp这是的一部分gcc suite http gcc gnu org onlin
  • Cython 和类的构造函数

    我对 Cython 使用默认构造函数有疑问 我的 C 类 Node 如下 Node h class Node public Node std cerr lt lt calling no arg constructor lt lt std e
  • 指针减法混乱

    当我们从另一个指针中减去一个指针时 差值不等于它们相距多少字节 而是等于它们相距多少个整数 如果指向整数 为什么这样 这个想法是你指向内存块 06 07 08 09 10 11 mem 18 24 17 53 7 14 data 如果你有i
  • 在 ASP.NET Core 3.1 中使用包含“System.Web.HttpContext”的旧项目

    我们有一些用 Net Framework编写的遗留项目 应该由由ASP NET Core3 1编写的API项目使用 问题是这些遗留项目正在使用 System Web HttpContext 您知道它不再存在于 net core 中 现在我们
  • 在数据库中搜索时忽略空文本框

    此代码能够搜索数据并将其加载到DataGridView基于搜索表单文本框中提供的值 如果我将任何文本框留空 则不会有搜索结果 因为 SQL 查询是用 AND 组合的 如何在搜索 从 SQL 查询或 C 代码 时忽略空文本框 private
  • 从路径中获取文件夹名称

    我有一些路c server folderName1 another name something another folder 我如何从那里提取最后一个文件夹名称 我尝试了几件事 但没有成功 我只是不想寻找最后的 然后就去休息了 Thank
  • 为什么我收到“找不到编译动态表达式所需的一种或多种类型。”?

    我有一个已更新的项目 NET 3 5 MVC v2 到 NET 4 0 MVC v3 当我尝试使用或设置时编译出现错误 ViewBag Title财产 找不到编译动态表达式所需的一种或多种类型 您是否缺少对 Microsoft CSharp
  • 如何使用 std::string 将所有出现的一个字符替换为两个字符?

    有没有一种简单的方法来替换所有出现的 in a std string with 转义 a 中的所有斜杠std string 完成此操作的最简单方法可能是boost字符串算法库 http www boost org doc libs 1 46
  • 恢复上传文件控制

    我确实阅读了以下帖子 C 暂停 恢复上传 https stackoverflow com questions 1048330 pause resume upload in c 使用 HTTP 恢复上传 https stackoverflow

随机推荐

  • Matplotlib 行高表属性

    我已经尝试了我能找到的所有命令和文档 如何在这里设置行的高度 from pylab import Create a figure fig1 figure 1 ax1 1 fig1 add subplot 111 Add a table wi
  • Solr MoreLikeThis 不适用于多个分片?

    我在 SolrCloud 中有 5 个节点集群 每个节点有 2 个分片 Solr版本 6 3 0 现在 当我运行 mlt 查询时 它仅返回每个节点的结果 并且不会将它们分布在所有分片 节点上 即 没有给出任何结果 给出结果 我什至尝试将其指
  • 硒隐式等待不起作用

    这是我第一次使用 selenium 和无头浏览器 因为我想使用 ajax 技术抓取一些网页 效果很好 但在某些情况下加载整个页面需要太多时间 特别是当某些资源不可用时 所以我必须为selenium设置一个超时 首先我尝试过set page
  • Spring Integration 中的 @Router 与注释(请求/回复)

    您能提供在 Spring Integration 中路由消息的任何示例吗 按有效负载消息 标头或类似以下内容进行过滤
  • 将 -1 作为文件描述符传递给 mmap

    我对 FC17 Linux 中的 ls 命令进行了 strace 以下是输出 execve usr bin ls ls 48 vars 0 brk 0 0x27c1000 mmap NULL 4096 PROT READ PROT WRIT
  • 3D 数学:根据“向上”和“向上”正交向量计算倾斜(滚动)角度

    我希望这是提出这个问题的正确位置和这个一样 https stackoverflow com questions 3035590 bank angle from up vector and look at vector 但表示为纯数学而不是图
  • 隐式强制转换对委托类型推断的意外影响

    我有一个简单的Money带有隐式转换的类型decimal struct Money decimal innerValue public static implicit operator Money decimal value return
  • 在 Applescript 中监控 Spotify 曲目变化?

    我正在尝试找出通过 Spotify 的 Applescript 库检测曲目更改的最佳方法 到目前为止 我已经尝试检查玩家位置 如果它等于 0 则它是一个新曲目 并且咆哮通知会再次出现 如果有人重新开始一首歌等 这通常不起作用 我想知道是否更
  • 为什么复制构造函数会有多个参数?

    12 8 2 非模板构造函数 对于类 X 是一个复制构造函数 如果 它的第一个参数是 X 类型 const X 易失性 X 或 const 易失性 X 并且要么没有 其他参数或其他所有 参数有默认参数 8 3 6 106 到目前为止 我还没
  • 似乎找不到循环 PL/SQL 数组的方法?

    我正在尝试这样做 arrCauses APEX UTIL STRING TO TABLE P1 CAUSE FOR c IN 1 arrCauses count LOOP INSERT INTO DT EVENT CAUSE EVENT I
  • 量角器未连接到 DevTools

    当我的页面从 Protractor 运行时 如何使用 Chrome 开发者工具来检查它 当我尝试打开开发工具时 我从量角器收到此错误 UnknownError disconnected not connected to DevTools S
  • 如何设置 1dCNN+LSTM 网络(Keras)的输入形状?

    我有以下想法要实施 Input gt CNN gt LSTM gt Dense gt Output 输入有 100 个时间步长 每个步长有一个 64 维特征向量 A Conv1D层将在每个时间步提取特征 CNN 层包含 64 个滤波器 每个
  • 在自定义 UITableView 中显示空白 UITableViewCell

    我正在尝试自定义 UITableView 到目前为止 看起来不错 但是当我使用自定义 UITableViewCell 子类时 当只有 3 个单元格时 我不会得到空白表格单元格 替代文本 http img193 imageshack us i
  • 如何在 Swift 2.0 中将结构保存到 NSUserDefaults

    我有一个名为Jar我想将它们的数组保存到 NSUserDefaults 中 这是 jar 结构代码 struct Jar let name String let amount Int init name String amount Int
  • Apache Tomahawk 文件上传不工作

    我在使用 Apache Tomahawk 时遇到问题 Glassfish 3 0 1 不断记录 警告 JSF1064 无法从库 org apache myfaces custom 中找到或提供资源 inputFileUpload xhtml
  • 如何从我的应用程序打开“设置”应用程序? [复制]

    这个问题在这里已经有答案了 在我正在开发的 iPhone 应用程序中 用户需要通过设置应用程序输入一些配置 然后我的应用程序才能连接到服务器并运行 现在 当用户首次启动我的应用程序时 我会显示一条警报 解释用户应该转到设置 输入配置详细信息
  • 在打字稿中读取和写入文本文件

    我应该如何从 Node js 中的 TypeScript 读取和写入文本文件 我不确定是否会在 node js 中读 写沙箱文件 如果没有 我相信应该有一种访问文件系统的方法 相信应该有一种访问文件系统的方法 Include node d
  • 将 SQL 读取到 DataSet 到 XmlDocument

    下面的代码工作起来很梦幻 但它能变得更紧凑 更接近 C 风格吗 尤其是我对两个问题有怀疑 是不是很丑 老C式 填充fill通过将变量用作参数内 代码可以变得更紧凑而不是通过String C String connectionString s
  • Android TableLayout 宽度

    我有两列TableLayout作为滚动视图的唯一子视图 第一列包含TextViews labels 并且第二列包含EditText Spinner DateWidget等等 价值观 尽管我已指定android layout width fi
  • 列出 C 常量/宏

    有没有办法使GNU C 预处理器 cpp 或其他一些工具 列出给定点上的所有可用宏及其值C file 我正在寻找特定于系统的宏 同时移植一个已经精通 UNIX 的程序并加载一堆稀疏的 UNIX 系统文件 只是想知道是否有比寻找定义更简单的方