Linux 中的 C 头文件中的“_IO(...)”是什么意思?

2023-11-26

我有一个 Linux 标准头文件,例如

/usr/src/linux-headers-3.2.0-35/include/linux/usbdevice_fs.h

其中包含define声明如下:

#define USBDEVFS_SUBMITURB32       _IOR('U', 10, struct usbdevfs_urb32)
#define USBDEVFS_DISCARDURB        _IO('U', 11)
#define USBDEVFS_REAPURB           _IOW('U', 12, void *)

“_IOR”、“_IO”和“_IOW”是什么意思?实际给出的值是什么,例如到USBDEVFS_DISCARDURB?


它们根据 ioctl 函数和输入参数定义 ioctl 编号。 它们是在内核中定义的include/asm-generic/ioctl.h.

您需要包括<linux/ioctl.h> (or linux/asm-generic/ioctl.h)在你的程序中。包括之前
/usr/src/linux-headers-3.2.0-35/include/linux/usbdevice_fs.h

您无法“预编译”此值(例如USBDEVFS_DISCARDURB),因为它们在其他平台上可能会有所不同。例如,您正在普通的旧 x86 上开发代码,但随后有人会尝试在 x86_64/arm/mips/etc 上使用它。所以你应该总是包含内核的ioctl.h确保您使用的是正确的值。

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

Linux 中的 C 头文件中的“_IO(...)”是什么意思? 的相关文章

  • 如何在 VC++ CString 中验证有效的整数和浮点数

    有人可以告诉我一种有效的方法来验证 CString 对象中存在的数字是有效整数还是浮点数吗 Use tcstol http msdn microsoft com en us library w4z2wdyc aspx and tcstod
  • 如何在类文件中使用 Url.Action() ?

    如何在 MVC 项目的类文件中使用 Url Action Like namespace 3harf public class myFunction public static void CheckUserAdminPanelPermissi
  • 现代 C++ 编译器是否能够在某些情况下避免调用 const 函数两次?

    例如 如果我有以下代码 class SomeDataProcessor public bool calc const SomeData d1 const SomeData d2 const private Some non mutable
  • 如何将 .txt 文件中的数据转换为 xml? C#

    我在一个文本文件中有数千行数据 我想通过将其转换为更容易搜索的内容来轻松搜索 我希望 XML 或其他类型的大型数据结构 尽管我不确定它是否是最好的对于我的想法 每行的数据如下所示 第 31 册 托马斯 乔治 32 34 154 每本书都不是
  • 强制初始化模板类的静态数据成员

    关于模板类的静态数据成员未初始化存在一些问题 不幸的是 这些都没有能够帮助我解决我的具体问题的答案 我有一个模板类 它有一个静态数据成员 必须为特定类型显式实例化 即必须专门化 如果不是这种情况 使用不同的模板函数应该会导致链接器错误 这是
  • 在 C# 中,如何根据在 gridview 行中单击的按钮引用特定产品记录

    我有一个显示产品网格视图的页面 该表内有一列 其中有一个名为 详细信息 的超链接 我想这样做 以便如果用户单击该特定产品的详细信息单元格 将打开一个新页面 提供有关该产品的更多信息 我不确定如何确定哪个Product记录链接的详细信息以及我
  • Eigen 和 OpenMP:由于错误共享和线程开销而没有并行化

    系统规格 Intel Xeon E7 v3 处理器 4 插槽 16 核 插槽 2 线程 核心 Eigen 系列和 C 的使用 以下是代码片段的串行实现 Eigen VectorXd get Row const int j const int
  • 什么是空终止字符串?

    它与什么不同标准 字符串 http www cplusplus com reference string string 字符串 实际上只是一个数组chars 空终止字符串是指其中包含空字符的字符串 0 标记字符串的结尾 不一定是数组的结尾
  • 如何使用 x64 运行 cl?

    我遇到了和这里同样的问题致命错误 C1034 windows h 未设置包含路径 https stackoverflow com questions 931652 fatal error c1034 windows h no include
  • 已发布的 .Net Core 应用程序警告安装 .Net Core,但它已安装

    我制作了一个 WPF 和控制台应用程序 供某人在我无法访问的私人服务器上使用 我使用 Visual Studio 2019 的内置 发布向导 来创建依赖于框架的单文件应用程序 当该人打开 WPF 应用程序时 他们会看到标准警告 他们单击 是
  • 不可变类与结构

    以下是类与 C 中的结构的唯一区别 如果我错了 请纠正我 类变量是引用 而结构变量是值 因此在赋值和参数传递中复制结构的整个值 类变量是存储在堆栈上的指针 指向堆上的内存 而结构变量作为值存储在堆上 假设我有一个不可变的结构 该结构的字段一
  • 将二变量 std::function 转换为单变量 std::function

    我有一个函数 它获取两个值 x 和 y 并返回结果 std function lt double double double gt mult double x double y return x y 现在我想得到一个常量 y 的单变量函数
  • 将函数参数类型提取为参数包

    这是一个后续问题 解包 元组以调用匹配的函数指针 https stackoverflow com questions 7858817 unpacking a tuple to call a matching function pointer
  • 比较:接口方法、虚方法、抽象方法

    它们各自的优点和缺点是什么 接口方法 虚拟方法 抽象方法 什么时候应该选择什么 做出这一决定时应牢记哪些要点 虚拟和抽象几乎是一样的 虚方法在基类中有一个实现 可以选择重写 而抽象方法则没有 并且must在子类中被覆盖 否则它们是相同的 在
  • C++ 对象用 new 创建,用 free() 销毁;这有多糟糕?

    我正在修改一个相对较大的 C 程序 不幸的是 并不总是清楚我之前的人使用的是 C 还是 C 语法 这是在一所大学的电气工程系 我们 EE 总是想用 C 来做所有事情 不幸的是 在这种情况下 人们实际上可以逃脱惩罚 但是 如果有人创建一个对象
  • Visual Studio 2015:v120 与 v140?

    仅供参考 Win10 x64 我今天开始尝试 Visual Studio 2015 在弄清楚如何运行 C C 部分后 我尝试加载一个大型个人项目 该项目使用非官方的glsdk http glsdk sourceforge net docs
  • 代码中的.net Access Forms身份验证“超时”值

    我正在向我的应用程序添加注销过期警报 并希望从我的代码访问我的 web config 表单身份验证 超时 值 我有什么办法可以做到这一点吗 我认为您可以从 FormsAuthentication 静态类方法中读取它 这比直接读取 web c
  • C++:二叉树所有节点值的总和

    我正在准备面试 我被一个二叉树问题困住了 我们如何计算二叉树所有节点中存在的值的总和 优雅的递归解决方案 伪代码 def sum node if node NULL return 0 return node gt value sum nod
  • 在 System.Type 上使用条件断点时出错

    这是函数 public void Init System Type Type this Type Type BuildFieldAttributes BuildDataColumns FieldAttributes 我在第一行设置了一个断点
  • MySqlConnectionStringBuilder - 使用证书连接

    我正在尝试连接到 Google Cloud Sql 这是一个 MySql 解决方案 我能够使用 MySql Workbench 进行连接 我如何使用 C 连接MySqlConnectionStringBuilder 我找不到提供这三个证书的

随机推荐

  • Jupyter 笔记本中的自动完成功能不起作用

    安装Anaconda最新版本后 我尝试了以下步骤 我无法让自动完成功能正常工作 关于我还需要尝试什么的任何建议 步骤1 1 pip安装jupyter contrib nbextensions 2 pip安装jupyter nbextensi
  • 忽略 ASP .NET MVC 中的文件夹

    我有一个现有的 ASP NET MVC 应用程序 我想忽略其中的特定文件夹 我打算在其中放置 PHP 脚本 我尝试按照描述添加忽略路由here但它不起作用 因为我仍然收到标准 ASP NET 配置错误 例如 假设我有这个文件夹结构 root
  • 如何使用 Async/Await 快速进行进度报告?

    我有一个需要 2 个回调的函数 我想将其转换为异步 等待 但我怎样才能在等待的同时不断返回进度呢 我在用https github com yannickl AwaitKit摆脱回调 typealias GetResultCallBack S
  • 使用 GROUP BY 和 Count(*) 进行匿名类型的 LINQ 查询

    我尝试使用 LINQ 查询来确定我拥有的每种特定对象类型的数量 并将这些值记录到匿名类型中 假设我有一些看起来像这样的数据 确实有暴露此属性的对象 但它的工作原理相同 GroupId 1 1 2 2 2 3 我知道如何在 SQL 中格式化我
  • 使用 JeMalloc 查找 Java 应用程序中的本机内存泄漏

    目前我正在尝试解决 Java 内存问题 我的 Java 应用程序不断使用越来越多的内存 最终它被 Linux OOM 杀手杀死 很可能是本地内存泄漏 因为经过检查 使用 VisualVM 的 JVM 的元空间和堆看起来都不错 使用top命令
  • 一台服务器上的多个 Zend 框架站点

    我在设置 httpd conf 或 htaccess 文件以识别一台服务器上的多个 zend 框架站点时遇到问题 对于开发 我只有一台服务器 我正在尝试设置站点 以便我可以访问它们 例如 localhost app1 localhost a
  • python pdb lambda函数全局名称错误

    我正在使用测试修复pdb set trace 在实施之前确保它按照我预期的方式工作 并不断出现奇怪的错误 Pdb test 1 2 3 4 4 3 2 1 Pdb max range len test key lambda i test i
  • 内容解析器返回错误的大小

    我正在从图库中选择一张图像并通过以下方式查询其大小ContentResolverAPI 它返回29kb 但是 当我使用 adb 检查文件时ls al它是 44kb 这是我查询图像大小的方法 private fun getFileInfo c
  • 我们如何在 iOS 应用程序中使用自定义字体? [复制]

    这个问题在这里已经有答案了 可能的重复 我可以在 iPhone 应用程序中嵌入自定义字体吗 如何在 iPhone 应用程序中自定义字体 是否可以 我怎样才能在a中使用这个自定义字体UILabel 我正在尝试添加MYRIADPRO SEMIB
  • 如何使用 OkHttp 设置连接超时

    我正在使用 OkHttp 库开发应用程序 我的麻烦是我找不到如何设置连接超时和套接字超时 OkHttpClient client new OkHttpClient Request request new Request Builder ur
  • Android房间数据库不会导出所有数据

    我正在尝试设置 Room 数据库备份功能 问题是 下载后 sql 数据库文件不包含应用程序中的最新数据集 它总是会错过一些最近的记录 有没有导出房间数据库的正确方法 附 在使用 sqliteHelper 处理我的数据库时 我没有遇到类似的问
  • Delphi XE2后台IDE编译器找不到源路径

    我刚刚购买了 XE2 版本 安装了更新 1 ISO 并制作了我的开源项目用它来编译 In fact 我将库的源代码路径添加到常规设置IDE中 适用于我使用的所有平台 即到目前为止的Windows 32位和64位 我编译了TestSQLite
  • 如何将 Python 3.5 设置为 MacOS 上的默认版本?

    我刚刚在 Mac 上安装了 Python 3 5 1 运行最新版本的 OSX 我的系统安装了 Python 2 7 当我打字时IDLE在终端提示符下 我的系统会启动原始的 Python 2 7 而不是新安装的 Python 3 5 当我从终
  • Parameter.As String 在 Oracle/SQL 下失败 - Parameter.Value 2 字节字符在 Oracle 下

    更改为 FireDAC 后 我无法让此代码在 MSSQL Oracle 上运行 with DataFormsettings do begin Close if Params Count 0 then FetchParams Params P
  • 原因:(noSuchName) 此 MIB 中没有这样的变量名称

    我使用的是centos操作系统 我正在尝试通过以下方式获取本地主机的内存统计信息snmpget命令 我收到此错误 snmpget v 1 c public localhost 1 3 6 1 4 1 2021 4 6 Error in pa
  • Node.js 应该监听哪些端口?如何以及为何?

    我的 Node js 应用程序在端口 80 上监听 http 在端口 443 上监听 https 我认为这是相当标准的做法 然而 我最近读到的一些例子使用其他端口 例如8080和8081 来监听http https 然后使用其他方式 例如i
  • Android - 无法以编程方式删除 Wifi 网络 - WifiManager 类型中的方法 removeNetwork(int) 不适用于参数(字符串)

    我正在尝试以编程方式删除我的 wifi 网络 但是我似乎无法让它删除 忘记当前连接的 wifi 连接 这应该是一个非常简单的任务 所以我不确定我到底做错了什么 我使用以下 StackOverflow 帖子作为示例 如何以编程方式忘记andr
  • Angular6 ngModelChange 中的去抖时间

    我有一个用 Angular6 编写的复杂计算器应用程序 它根据 ngModelChange 事件中的多个输入计算结果 并直接在图表中显示这些结果 计算是在服务器端完成的 现在我想添加一个防抖时间 这样服务器就不会在按下每个键时收到请求 我在
  • 位置:绝对,不设置上/左/下/右?

    Case 1 我想在默认 WordPress 主题的标题中的照片上方放置一个徽标 http twentyelevendemo wordpress com 我的解决办法 在照片前加上logo 然后设置position absolute on
  • Linux 中的 C 头文件中的“_IO(...)”是什么意思?

    我有一个 Linux 标准头文件 例如 usr src linux headers 3 2 0 35 include linux usbdevice fs h 其中包含define声明如下 define USBDEVFS SUBMITURB