ansi C 对程序中外部变量的数量有限制吗?

2023-12-02

外部变量是指用以下语句声明的变量extern修饰符(并在程序的其他地方定义)。

我被告知这个限制,但在网上找不到确认或反驳。这是真的?如果可以的话,极限是多少?它通常由编译器强制执行吗?


C99 标准指定了几个转换限制 (5.2.4.1)。其中之一是:

一个翻译单元中有 4095 个外部标识符

C89标准规定了这个限制(2.2.4.1):

一个翻译单元中有 511 个外部标识符

请注意,这些是符合实施的最低限制,而不是绝对限制。

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

ansi C 对程序中外部变量的数量有限制吗? 的相关文章

  • 检测到 NuGet 包的版本冲突

    我正在开发 ASP Net core 2 1 Web 应用程序项目 我的解决方案中有 1 个项目和 3 个其他库 它是高级架构 数据访问层 DAL 业务层 BL 公共层 CL 所以我需要添加引用来连接一些库和项目 我已经添加了CL参考我的项
  • 赋值运算符和复制构造函数有什么区别?

    我不明白C 中赋值构造函数和复制构造函数之间的区别 是这样的 class A public A cout lt lt A A lt lt endl The copy constructor A a b The assignment cons
  • 如何进行带有偏差的浮点舍入(始终向上或向下舍入)?

    我想以偏置舍入浮动 要么总是向下 要么总是向上 代码中有一个特定的点 我需要这个 程序的其余部分应该像往常一样四舍五入到最接近的值 例如 我想四舍五入到最接近的 1 10 倍数 最接近 7 10 的浮点数约为 0 69999998807 但
  • 为什么基类必须有一个带有 0 个参数的构造函数?

    这不会编译 namespace Constructor0Args class Base public Base int x class Derived Base class Program static void Main string a
  • Linux TUN/TAP:无法从 TAP 设备读回数据

    问题是关于如何正确配置想要使用 Tun Tap 模块的 Linux 主机 My Goal 利用现有的路由软件 以下为APP1和APP2 但拦截并修改其发送和接收的所有消息 由Mediator完成 我的场景 Ubuntu 10 04 Mach
  • 在 Xcode4 中使用 Boost

    有人设置 C Xcode4 项目来使用 Boost 吗 对于一个简单的 C 控制台应用程序 我需要在 Xcode 中设置哪些设置 Thanks 用这个来管理它 和这个
  • std::map 和二叉搜索树

    我读过 std map 是使用二叉搜索树数据结构实现的 BST 是一种顺序数据结构 类似于数组中的元素 它将元素存储在 BST 节点中并按其顺序维护元素 例如如果元素小于节点 则将其存储在节点的左侧 如果元素大于节点 则将其存储在节点的右侧
  • 调试内存不足异常

    在修复我制作的小型 ASP NET C Web 应用程序的错误时 我遇到了 OutOfMemoryException 没有关于在哪里查看的提示 因为这是一个编译时错误 如何诊断此异常 我假设这正是内存分析发挥作用的地方 有小费吗 Thank
  • 获取从属性构造函数内部应用到哪个属性的成员?

    我有一个自定义属性 在自定义属性的构造函数内 我想将属性的属性值设置为属性所应用到的属性的类型 是否有某种方式可以访问该属性所应用到的成员从我的属性类内部 可以从 NET 4 5 using CallerMemberName Somethi
  • C++11 函数局部静态 const 对象的线程安全初始化

    这个问题已在 C 98 上下文中提出 并在该上下文中得到回答 但没有明确说明有关 C 11 的内容 const some type create const thingy lock my lock some mutex static con
  • 如何用 kevent() 替换 select() 以获得更高的性能?

    来自Kqueue 维基百科页面 http en wikipedia org wiki Kqueue Kqueue 在内核和用户空间之间提供高效的输入和输出事件管道 因此 可以修改事件过滤器以及接收待处理事件 同时每次主事件循环迭代仅使用对
  • 在 C# 中将位从 ulong 复制到 long

    所以看来 NET 性能计数器类型 http msdn microsoft com en us library system diagnostics performancecounter aspx有一个恼人的问题 它暴露了long对于计数器
  • C# using 语句、SQL 和 SqlConnection

    使用 using 语句 C SQL 可以吗 private static void CreateCommand string queryString string connectionString using SqlConnection c
  • C# 搜索目录中包含字符串的所有文件,然后返回该字符串

    使用用户在文本框中输入的内容 我想搜索目录中的哪个文件包含该文本 然后我想解析出信息 但我似乎找不到该字符串或至少返回信息 任何帮助将不胜感激 我当前的代码 private void btnSearchSerial Click object
  • 过期时自动重新填充缓存

    我当前缓存方法调用的结果 缓存代码遵循标准模式 如果存在 则使用缓存中的项目 否则计算结果 在返回之前将其缓存以供将来调用 我想保护客户端代码免受缓存未命中的影响 例如 当项目过期时 我正在考虑生成一个线程来等待缓存对象的生命周期 然后运行
  • gdb查找行号的内存地址

    假设我已将 gdb 附加到一个进程 并且在其内存布局中有一个文件和行号 我想要其内存地址 如何获取文件x中第n行的内存地址 这是在 Linux x86 上 gdb info line test c 56 Line 56 of test c
  • 如何在 GCC 5 中处理双 ABI?

    我尝试了解如何克服 GCC 5 中引入的双重 ABI 的问题 但是 我没能做到 这是一个重现错误的非常简单的示例 我使用的GCC版本是5 2 如您所见 我的主要函数 在 main cpp 文件中 非常简单 main cpp include
  • 我应该在应用程序退出之前运行 Dispose 吗?

    我应该在应用程序退出之前运行 Dispose 吗 例如 我创建了许多对象 其中一些对象具有事件订阅 var myObject new MyClass myObject OnEvent OnEventHandle 例如 在我的工作中 我应该使
  • 热重载时调用方法

    我正在使用 Visual Studio 2022 和 C 制作游戏 我想知道当您热重新加载应用程序 当它正在运行时 时是否可以触发一些代码 我基本上有 2 个名为 UnloadLevel 和 LoadLevel 的方法 我想在热重载时执行它
  • 在基类集合上调用派生方法

    我有一个名为 A 的抽象类 以及实现 A 的其他类 B C D E 我的派生类持有不同类型的值 我还有一个 A 对象的列表 abstract class A class B class A public int val get privat

随机推荐

  • windows cmd shell 中的单个抑扬符是什么意思:更多?

    这可能不是一个真正与编程相关的问题 但我想知道很长一段时间 下面的cmd命令是什么意思 只需在 cmd shell 中输入一个抑扬符 Windows 就会要求更多 而只要你输入偶数个抑扬符 Windows 就无法获得足够的信息 从 Vist
  • 使用 renderscript 计算数组中值的总和

    嗨 我是新手 正在尝试编码渲染脚本 我想知道如何使用渲染脚本对数组中的元素求和 有没有办法可以将输出传递回脚本以进行顺序添加 我的问题陈述是 向量和 描述 计算数组中值的总和 输入 整数数组 输出 整数 任何帮助将非常感激 恐怕这比看起来要
  • 时间:2019-03-17 标签:c#list permutations with limit length

    我有一个报价列表 我想从中创建链长度有限的 链 例如排列 我已经使用 Kw Combinatorics 创建排列了project 但是 默认行为会在列表计数的长度中创建排列 我不知道如何将链长度限制为 n 这是我当前的代码 private
  • 在同一个 jlabel 上重新显示其他 img 存在困难

    我有点卡住了 当我按下提交按钮时 应该在 JLabel 图像的同一位置重新显示另一张图片 因此如果有人有任何想法 我将不胜感激 我正在使用 eclipse 并且程序正在编译和运行 这是代码 Here is the GUI of the pr
  • 控制表单字段访问的最佳实践

    我有一个经典的 3 层 ASP Net 3 5 Web 应用程序 其中包含显示业务对象并允许编辑它们的表单 表单上的控件对应于基础业务对象的属性 根据用户的角色 用户可以读 写 只读或无权访问各种控件 非常传统的东西 我的问题是 编码的面向
  • 将键值对分成两个数组

    将键和值分离到两个不同的数组中的最佳方法是什么 这样 var data A Key 34 Another Key 16 Last Key 10 会变成这样 data1 A Key Another Key Last Key data2 34
  • html5视频flash后备建议

    我正在使用 html5 video 标签 想知道您是否可以帮助回答以下问题 当包含不同的文件格式 mp4 ogg 等时 我是否还必须包含 flv 作为 Flash 后备 或者浏览器是否知道自动默认为 Flash 版本 目前我只使用 mp4
  • 如何解决 C++ 中用于维护静态局部变量的服务数据的线程安全性?

    考虑以下场景 我们有一个带有静态局部变量的 C 函数 void function static int variable obtain blahblablah 该函数需要同时从多个线程调用 因此我们添加一个临界区以避免并发访问静态本地 vo
  • 在张量之间进行运算时出现“InvalidArgumentError:不兼容的形状:[64,40000] vs. [64] [Op:Mul]”?

    我正在尝试在两个张量之间执行此操作 green mat sio loadmat green mat green np array green mat G2 green tf convert to tensor green green tf
  • 单击链接时忽略表格单击功能

    当用户点击表格中的一行时 我有一个点击方法 table gt tbody gt tr click function if this hasClass info this removeClass info else this addClass
  • ggplot 区域外部(右侧)的 ggrepel 标签

    library tidyverse library ggrepel df lt structure list Fruit c Yellow Pear Yellow Pear Yellow Pear Yellow Pear Yellow Pe
  • Keycloak 服务器重启后 Keycloak 访问令牌无效

    我们在单页应用程序中使用 Keycloak 3 4 0 Keycloak js Keycloak 将其数据存储在 MariaDB 中 当我重新启动 Keycloak 服务器 不是 MariaDB 并刷新我的单页应用程序时 我被重定向到登录页
  • WPF TextBlock 屏幕阅读器无法读取内容

    我有一个包含自定义 WPF 窗口的应用程序 用于显示类似于 Win32 MessageBox 的弹出窗口 作为要求的一部分 应用程序必须可通过屏幕阅读器 特别是 JAWS 访问 我在让屏幕阅读器读出对话框中的文本时遇到问题 但它会正常读取按
  • 需要 pexpect 模块的帮助

    需要 pexpect 模块的帮助 我编写了一个简单的代码 可以使用 ssh 从服务器克隆 git 存储库 我面临几个问题 密码以纯文本形式显示 我不知道下载后退出程序的正确方法 它抛出以下错误 Traceback most recent c
  • 从单元格中取回公式 - VBA

    我正在编写 VBA 代码 其中我需要在一张纸中引用另一张纸中的公式 例如 在工作表 A 的单元格 1 3 中 有一个公式 R 1 C R 2 C 我想在单元格 1 3 的工作表 B 中输入公式 A R 1 C A R 2 C 我只想将公式保
  • 将 vb6 应用程序转换为 C# 的升级程序

    实现这一目标的最佳途径是什么 我知道VS2005包含升级机制 VS以后的版本有这个吗 微软专门投入了站点到 VB6 gt NET 迁移 他们推荐一个免费工具来自ArtInSoft 然而 我不确定我是否愿意维护以 VB6 风格编写的 NET
  • 如何在dyntick模式下卸载1HZ的tick?

    似乎在内核 4 19 和 4 20 中 剩余的 1Hz 滴答可以在 dyntick 模式下卸载到工作队列 但究竟要实现这一目标吗 我尝试通过执行以下操作来实现这一目标 设置 CONFIG NOHZ FULL y CONFIG RCU FAS
  • 意图 - 如果活动正在运行,则将其置于前面,否则启动一个新活动(从通知中)

    我的应用程序有通知 显然 没有任何标志 每次都会启动一个新活动 因此我会得到多个相同的活动在彼此之上运行 这是错误的 我想要它做的是将通知挂起意图中指定的活动带到前面 如果它已经在运行 否则启动它 到目前为止 我对该通知的意图 待处理意图是
  • Laravel 在 Doctype 之前显示一个空行

    这是代码 我该如何解决这个问题 在将代码与 Laravel 集成之前 我测试了 HTML CSS JavaScript 确保您的 PHP 文件没有结束标记 gt 他们可能会在您的 HTML 中添加空格 欲了解更多信息 请参阅 PHP 文档
  • ansi C 对程序中外部变量的数量有限制吗?

    外部变量是指用以下语句声明的变量extern修饰符 并在程序的其他地方定义 我被告知这个限制 但在网上找不到确认或反驳 这是真的 如果可以的话 极限是多少 它通常由编译器强制执行吗 C99 标准指定了几个转换限制 5 2 4 1 其中之一是