谁能告诉我 pragma 语句的用法

2023-11-29

谁能告诉我 C 和 Ada 中 pragma 的使用,如果可能的话请提供一些例子。


C99 中有 3 个标准编译指示:

#pragma STDC FP_CONTRACT on-off-switch
#pragma STDC FENV_ACCESS on-off-switch
#pragma STDC CX_LIMITED_RANGE on-off-switch

其中“开关”是其中之一 打开、关闭、默认。

这些可以在编译时使用,以神秘的方式修改编译器的行为(这些与 C99 浮点行为有关)。标准为标准编译保留 STDC;其他人可以使用他们喜欢的任何其他东西。

正如 Samuel Klatchko 所指出的,也存在非标准的编译指示。

基本上,它们是一种让编译器以半标准方式执行非标准操作的方法。一个例子是'#pragma pack' 这意味着创建的结构在成员之间没有填充,即使这意味着对这些成员的访问将不是最佳的(大概空间比时间更重要)。这不是一个特别好的主意(尽管使用它的人会反对);但这是一个普遍认为的要求,因此编译器通常支持它。

我用 C 语言编程已经有 25 年了,还有一点闲暇。我一次都不需要使用 pragma。我已经玩过几次了,但从来没有真正需要使用它。也许我很幸运。

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

谁能告诉我 pragma 语句的用法 的相关文章

  • 使用 gcc 在 Linux 上运行线程构建块 (Intel TBB)

    我正在尝试为线程构建块构建一些测试 不幸的是 我无法配置 tbb 库 链接器找不到库 tbb 我尝试在 bin 目录中运行脚本 但这没有帮助 我什至尝试将库文件移动到 usr local lib 但这又失败了 任何的意见都将会有帮助 确定您
  • 类型中的属性名称必须是唯一的

    我正在使用 Entity Framework 5 并且有以下实体 public class User public Int32 Id get set public String Username get set public virtual
  • 从经典 ASP 调用 .Net C# DLL 方法

    我正在开发一个经典的 asp 项目 该项目需要将字符串发送到 DLL DLL 会将其序列化并发送到 Zebra 热敏打印机 我已经构建了我的 DLL 并使用它注册了regasm其次是 代码库这使得 IIS 能够识别它 虽然我可以设置我的对象
  • 如何连接重叠的圆圈?

    我想在视觉上连接两个重叠的圆圈 以便 becomes 我已经有部分圆的方法 但现在我需要知道每个圆的重叠角度有多大 但我不知道该怎么做 有人有主意吗 Phi ArcTan Sqrt 4 R 2 d 2 d HTH Edit 对于两个不同的半
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • 方程“a + bx = c + dy”的积分解

    在等式中a bx c dy 所有变量都是整数 a b c and d是已知的 我如何找到整体解决方案x and y 如果我的想法是正确的 将会有无限多个解 由最小公倍数分隔b and d 但我只需要一个解决方案 我可以计算其余的 这是一个例
  • 人脸 API DetectAsync 错误

    我想创建一个简单的程序来使用 Microsoft Azure Face API 和 Visual Studio 2015 检测人脸 遵循 https social technet microsoft com wiki contents ar
  • C# 列表通用扩展方法与非通用扩展方法

    这是一个简单的问题 我希望 集合类中有通用和非通用方法 例如List
  • 如何获取 EF 中与组合(键/值)列表匹配的记录?

    我有一个数据库表 其中包含每个用户 年份组合的记录 如何使用 EF 和用户 ID 年份组合列表从数据库获取数据 组合示例 UserId Year 1 2015 1 2016 1 2018 12 2016 12 2019 3 2015 91
  • C# - 当代表执行异步任务时,我仍然需要 System.Threading 吗?

    由于我可以使用委托执行异步操作 我怀疑在我的应用程序中使用 System Threading 的机会很小 是否存在我无法避免 System Threading 的基本情况 只是我正处于学习阶段 例子 class Program public
  • 为什么这个字符串用AesCryptoServiceProvider第二次解密时不相等?

    我在 C VS2012 NET 4 5 中的文本加密和解密方面遇到问题 具体来说 当我加密并随后解密字符串时 输出与输入不同 然而 奇怪的是 如果我复制加密的输出并将其硬编码为字符串文字 解密就会起作用 以下代码示例说明了该问题 我究竟做错
  • 为什么 C# 2.0 之后没有 ISO 或 ECMA 标准化?

    我已经开始学习 C 并正在寻找标准规范 但发现大于 2 0 的 C 版本并未由 ISO 或 ECMA 标准化 或者是我从 Wikipedia 收集到的 这有什么原因吗 因为编写 审查 验证 发布 处理反馈 修订 重新发布等复杂的规范文档需要
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • 为什么 isnormal() 说一个值是正常的,而实际上不是?

    include
  • 编译时展开 for 循环内的模板参数?

    维基百科 here http en wikipedia org wiki Template metaprogramming Compile time code optimization 给出了 for 循环的编译时展开 我想知道我们是否可以
  • C# 中的 IPC 机制 - 用法和最佳实践

    不久前我在 Win32 代码中使用了 IPC 临界区 事件和信号量 NET环境下场景如何 是否有任何教程解释所有可用选项以及何时使用以及为什么 微软最近在IPC方面的东西是Windows 通信基础 http en wikipedia org
  • 为什么C++代码执行速度比java慢?

    我最近用 Java 编写了一个计算密集型算法 然后将其翻译为 C 令我惊讶的是 C 的执行速度要慢得多 我现在已经编写了一个更短的 Java 测试程序和一个相应的 C 程序 见下文 我的原始代码具有大量数组访问功能 测试代码也是如此 C 的
  • C# 中最小化字符串长度

    我想减少字符串的长度 喜欢 这串 string foo Lorem ipsum dolor sit amet consectetur adipiscing elit Aenean in vehicula nulla Phasellus li
  • C# 使用“?” if else 语句设置值这叫什么

    嘿 我刚刚看到以下声明 return name null name NA 我只是想知道这在 NET 中叫什么 是吗 代表即然后执行此操作 这是一个俗称的 条件运算符 三元运算符 http en wikipedia org wiki Tern
  • 类型或命名空间“MyNamespace”不存在等

    我有通常的类型或命名空间名称不存在错误 除了我引用了程序集 using 语句没有显示为不正确 并且我引用的类是公共的 事实上 我在不同的解决方案中引用并使用相同的程序集来执行相同的操作 并且效果很好 顺便说一句 这是VS2010 有人有什么

随机推荐

  • 元素树对xpath的限制

    我使用 Element Tree 一段时间了 我喜欢它 因为它很简单 但我怀疑它的 x 路径的实现 这是 XML 文件 a b b b b a
  • c、结构体后面的函数定义

    675 Check the validity of an ACL for a file 676 677 int 678 ufs aclcheck ap 679 struct vop aclcheck args 680 struct vnod
  • 实现双工时 WCF 中出现超时异常

    我的服务合同和回调合同如下所示 ServiceContract CallbackContract typeof IWebshopCallback interface IWebshop OperationContract string Get
  • 如何向`@Html.EditorFor`添加自定义数据属性和类?

    我想添加一些自定义属性input产生于 Html EditorFor 我尝试了以下方法 Html EditorFor model gt model Percent new class percent 但它只是忽略了我的类 从我周围的搜索中可
  • 向 JSF 2.0 UIInput 组件添加自定义属性 (HTML5) 支持

    我正在尝试编写一个渲染器来处理placeholder上的属性
  • 捕获相机拍摄的照片并将其存储到本地数据库/PhoneGap/Cordova/iOS中

    我目前正在使用 Phonegap Cordova 和 jQuerymobile 构建 iOS 应用程序 这个想法是用相机拍照并存储捕获的图像以供将来使用 我想将路径 文件名存储到本地数据库中 并将图片文件移动到 iPhone 中的持久位置
  • 优化 iPad 上多张图片的加载

    我正在开发一个 iPad 项目 尝试通过切换预渲染图像来模拟 3D 物体的旋转 在内存管理方面 我不是最敏锐的人 所以我想知道是否有人对如何优化它有任何建议 我的解决方案现在看起来像这样 void touchesMoved NSSet to
  • 学习Python:If条件一直执行

    我正在学习 python 我不明白为什么下面的程序会打印你的数字比我想象的要多即使猜测的数字较小 就像在 python 中一样 它是比较字符串而不是数字 number 32 tries 1 print I have chosen a num
  • 未捕获的 ReflectionException:类日志不存在 Laravel 5.2

    我目前正在尝试从 github 克隆我的现有项目 克隆后我运行composer install在此过程中我收到以下错误 Uncaught ReflectionException Class log does not exist 我在 Cen
  • 在Ui线程上执行同步操作

    我正在尝试开发 Windows 应用程序并遇到问题 我有一个 MainPage xaml 和另外 2 个 StartScreen xaml 和 Player xaml 如果某些条件成立 我将切换主页的内容 因此 我在 StartScreen
  • PHP从页面中提取文章摘录

    任何人都知道如何从任何给定的文章页面生成摘录 因此可以从许多类型的网站获取资源 就像当你将网址粘贴到帖子中时 Facebook 所做的那样 谢谢 你想做的事情叫做网页抓取 这样做的基本方法是捕获页面 您可以使用以下命令抓取 URLfile
  • 使用 URL.createObjectURL 重建 PDF 后损坏

    我试图从服务器传递 PDF 文件并将其显示在浏览器中 但输出已损坏 var blob atob data Package console log blob var file new Blob blob type application pd
  • 如何在 Android 中显示来自 google 驱动器 url 的视频

    我想在 Android 应用程序中显示视频 我在谷歌上搜索并找到了下面的代码 VideoView videoView VideoView findViewById R id videoView 字符串 vid 地址 https docs g
  • bash 脚本中的“exec”之后不会运行任何代码[重复]

    这个问题在这里已经有答案了 我在命令名称中使用变量扩展进行测试的示例 bash 脚本 test command w variable expansion in name sh bin bash Gabriel Staples 21 Mar
  • 必须声明标量变量错误

    这与我最后一个问题有关 我有这个代码 DECLARE PatientId UNIQUEIDENTIFIER DECLARE FormId NCHAR 16 DECLARE columns VARCHAR 8000 DECLARE query
  • 将 JFileChooser 置于所有窗口之上

    我似乎对文件选择器对话框的非常简单的实现有一个问题 它要求我每次都最小化 Netbeans 才能实现它 而且现在特别是在测试时变得非常令人沮丧 我在网上看到了一些解决方案 包括SO但似乎没有一个能做到这一点 而其他一些对于我目前的水平来说似
  • 在 swing 中调整图像大小

    我有一段代码 用于将图像大小调整为窗帘大小 我想将分辨率更改为 200 dpi 之类的值 基本上我需要它的原因是因为我想显示用户选择的图像 有点大 然后如果用户批准我想在不同的地方显示相同的图像但使用较小的分辨率 不幸的是 如果我给它一个大
  • 如何在 html 中嵌入 .AVI?

    我在网上找到了一些 html 中的 AVI 示例 但我的页面http pianocheater com VIDEO html是有问题的 我的电脑上的 chrome 没问题 在 IE 中 您会在顶部看到那个该死的栏 然后视频就变成空白了 它可
  • 在 Python 中进行多处理时无法使用输入

    我想同时运行2个进程 1 将继续每秒打印 a 另一个进程将要求输入 当输入为 Y 时 第一个进程将停止打印 a 我对 Python 还很陌生 我不明白 这是我到目前为止想到的 from multiprocessing import Proc
  • 谁能告诉我 pragma 语句的用法

    谁能告诉我 C 和 Ada 中 pragma 的使用 如果可能的话请提供一些例子 C99 中有 3 个标准编译指示 pragma STDC FP CONTRACT on off switch pragma STDC FENV ACCESS