linux/unix 下是否有与 WinAPI 的 MAX_PATH 等效的东西?

2023-12-26

如果我想分配一个保证足够大以容纳任何有效的绝对路径+文件名的字符数组(在C中),那么它需要有多大。

在 Win32 上,有 MAX_PATH 定义。 Unix/linux 的等价物是什么?


有一个PATH_MAX,但是有点问题。来自错误部分真实路径(3) http://man7.org/linux/man-pages/man3/realpath.3.html手册页:

该函数的 POSIX.1-2001 标准版本被破坏了 设计时,无法确定合适的尺寸 输出缓冲器,解析路径。根据 POSIX.1-2001,缓冲区为 尺寸PATH_MAX就足够了,但是PATH_MAX不必是一个定义的 常数,并且可能必须使用以下方法获得路径配置(3) http://man7.org/linux/man-pages/man3/pathconf.3.html。和 询问路径配置(3) http://man7.org/linux/man-pages/man3/pathconf.3.html并没有真正的帮助,因为,一方面 POSIX 警告结果路径配置(3) http://man7.org/linux/man-pages/man3/pathconf.3.html可能很大并且 不适合分配内存,另一方面路径配置(3) http://man7.org/linux/man-pages/man3/pathconf.3.html可能会返回 -1 来表示PATH_MAX不是 有界。

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

linux/unix 下是否有与 WinAPI 的 MAX_PATH 等效的东西? 的相关文章

  • 为什么我会收到未找到分析器的警告?

    我创建了一个玩具项目来检查最新的 NET 7 预览版 5 和正则表达式代码生成 它效果很好 所以我对现有项目应用了相同的更改 不是为了生产 而是为了个人生产力 由于某种原因 我收到这些警告 CS8032 An instance of ana
  • NDK 应用 onDestroy 清理 - 如何 DetachCurrentThread

    因此 如果我们连接 我们必须在完成后分离线程 对吗 JNIEnv get jni env JNIEnv res JAVA VM gt GetEnv void res JNI VERSION 1 6 Using cached JavaVM J
  • 最新 .Net MongoDb.Driver 的连接问题

    我创建了一个 MongoLab 沙箱数据库 我与 MongoChef 连接 效果很好 我通过 Nuget 安装了 MongoDB Driver 2 2 2 我编写了一些简单的 C 演示代码 但就是无法使其工作 连接字符串是直接从 Mongo
  • 局部函数声明有什么用处吗?

    大多数像我这样的 C 程序员都曾犯过以下错误 class C int main C c declares a function c taking no arguments returning a C not as intended by m
  • 在没有 epsilon 的情况下可以将浮点数与 0.0 进行比较吗?

    我知道 要比较两个浮点值 需要使用一些 epsilon 精度 因为它们并不精确 但是 我想知道是否存在边缘情况 我不需要那个 epsilon 特别是 我想知道这样做是否总是安全的 double foo double x if x lt 0
  • Monotouch全局异常处理

    我在野外发现了一只令人讨厌的虫子 但我无法确定它的具体情况 有没有办法拥有全局 Try Catch 块 或者有办法处理 Monotouch 中未处理的任何异常 我可以包起来吗UIApplication Main args 在 try cat
  • opencv中如何去除二值图像噪声?

    将图像转换为二值图像 黑白 后如果有任何噪音怎么办 我消除了那些不需要的噪音 您可以看到下图的黑色区域内有一些白噪声 我该如何去除噪声 使用opencv http img857 imageshack us img857 999 blackn
  • 控制台应用程序中使用 Unicode 字符的 _tprintf

    我正在从 Unicode 构建的控制台应用程序 使用 C 和 Visual Studio 2008 执行这个简单的输出 此代码旨在在 Windows 上运行 tprintf L Some sample string n 一切正常 但是如果我
  • 如何将STL容器数据转储到gdb中?

    我无法在 gdb 中转储 STL 无序映射容器值 变量类型是 std unordered map var 我的 gdb 版本 7 7 1 GDB配置 configure host x86 64 linux gnu target x86 64
  • 如何让XmlReader读取C#中的属性?

    我有一个 XML Stream 其中包含以下 XML 内容
  • 当需要不同数量和类型的参数时如何创建操作委托列表

    我们有一组大约两打的类 它们继承自具有抽象 Validate 方法的基类 当然 每个类都有不同的验证需求 但它们之间的不同组合需要规则 因此 正如您可以想象的那样 这导致了大量代码重复 例如 A 类需要规则 1 3 6 和 9B 类需要规则
  • C#:自定义转换为值类型

    是否可以将自定义类转换为值类型 这是一个例子 var x new Foo var y int x Does not compile 是否有可能实现上述情况 我需要超载一些东西吗Foo 您将必须重载强制转换运算符 public class F
  • 如何检测应用程序正在运行的 .NET 版本?

    我尝试使用Environment Version ToString 确定目标计算机上正在使用什么 NET 框架 但安装了 4 0 版本时 它说我正在使用 NET 2 0 如何检测目标计算机上正在运行的 NET Framework 版本 En
  • 如何从 Access 数据库中读取“是/否”值作为布尔值?

    帮我找回YES NO来自 MS Access 的布尔格式数据类型 我尝试解析它 但它总是返回 false 更新 实际上不是问题抱歉 它确实接受 YES NO 作为布尔值 OleDbconnection dbConnect new OleDb
  • “1个未解决的外部”C++

    我已经检查了所有文件之间的连接以及类和函数定义 但每次我尝试运行我的程序时 它都会阻止我并告诉我它有 1 个未解析的外部 该程序应该打开多个文件 一个 学生 文件和一个 成绩 文件 从中读取数据 然后使用 查询文件 来查找数据 找到查询中要
  • linux下写入后崩溃

    如果我使用 write 将一些数据写入磁盘上的文件会发生什么 但我的应用程序在刷新之前崩溃了 如果没有系统故障 是否可以保证我的数据最终会刷新到磁盘 如果您正在使用write 并不是fwrite or std ostream write 那
  • 使用多态对象数组进行 JSON 反序列化

    我在涉及多态对象数组的 JSON 反序列化方面遇到问题 我已经尝试过记录的序列化解决方案here https stackoverflow com questions 5186973 json serialization of array w
  • 为什么在构造函数中设置字段是(或不是)线程安全的?

    假设您有一个像这样的简单类 class MyClass private readonly int a private int b public MyClass int a int b this a a this b b public int
  • 如何在 C 中创建最低有效位设置为 1 的掩码

    这个功能如何运作 最低有效 n 位设置为 1 的掩码 Example n 6 gt 0x2F n 17 gt 0x1FFFF 我根本不明白这些 尤其是 n 6 gt 0x2F 另外 什么是面膜 通常的方法是采取1 并将其左移n位 这会给你类
  • 将一个 IEnumerable 拆分为多个 IEnumerable

    我是 linq 新手 我需要根据指示器将 Couple string text bool Indicator 类型的 IEnumerable 拆分为多个 IEnumerable 我尝试使用skipWhile 和 TakeWhile 但没有找

随机推荐

  • Perl chdir 不起作用

    之前的一篇文章可能有用 Perl system 调用失败 返回代码 65280 https stackoverflow com questions 11989196 perl system call failed with return c
  • 如何在 NativeScript 中访问 Google Play 服务

    我目前正在从 NativeScript 开始 我正在尝试将某些 Google Play 服务包含到 android 项目中 我将相关的 aar 文件放入我的应用程序项目的 node modules 文件夹中并构建它 我可以看到它们已成功添加
  • 将 mongo 中的大写字母更改为驼峰式大小写?

    我有一个名为 User 的集合 其中包含字段 FirstName 和 SecondName 但数据是大写字母 firstName FIDO secondName JOHN 我想知道是否可以将字段制作成骆驼箱 firstName Fido s
  • 打印 `awk` 中的倒数第二列/字段

    我想打印倒数第二列或字段awk 字段的数量是NF多变的 我知道我应该能够使用 NF 但我不确定如何使用它 这似乎不起作用 awk print NF awk print NF 1 应该管用
  • 使用 SQL*Loader 更新表中的列

    我编写了一个具有以下查询的 SQL 脚本 查询工作正常 update partner set is seller buyer 1 where id in select id from partner where names in A B C
  • 将字母转换为数字

    我想将字母 A 更改为点 1 将字母 Z 更改为数字 26 然后再次更改为数字 27 字母 AA AB 更改为 28 我该怎么办 我必须使用 开关 吗 我使用java程序 没有对此进行测试 但按照这些思路应该可以工作 public Stri
  • 在 Play 2.0 中设置自定义根 URL

    我有一个 play 应用程序 如果它是 Web 主机的根目录 则可以运行 但是我想将其作为主机的子 URL 加载 That is http example com lt This works fine and i want to move
  • 求助......串口编程

    我想用 python 与我的串口进行通信 我为linux安装了pyserial和uspp 尽管如此 当我运行以下代码时 import serial ser serial Serial dev pts 1 19200 timeout 1 pr
  • 如何改变CSS中的删除线/穿线粗细?

    我正在使用text decoration line through在 CSS 中 但我似乎找不到任何方法来改变线条粗细 而不需要像 hr 或图像叠加 有没有优雅的方法来指定穿线的粗细 现代的解决方案是使用文字装饰厚度 https devel
  • 在 MAMP 上安装 PEAR

    我正在使用 MAMP 进行开发 我一直无法让 PEAR 工作 MAMP 文档和论坛似乎没有答案 在MAMP论坛上提问的人似乎都没有回复 以前我在 MAMP 上开发了系统 并且只使用 PEAR 来处理邮件 所以我让它在服务器上运行一次 而不是
  • 浏览器 JavaScript 是否允许 SIMD 或矢量化操作?

    我想用 JavaScript 编写需要大量数值计算的应用程序 然而 我对客户端 JavaScript 中类似线性代数的高效计算的状态感到非常困惑 似乎有很多方法 但没有明确表明它们已准备就绪 其中大多数似乎对允许计算的向量和矩阵的大小有限制
  • 将变量保存在文本文件中

    我想将变量 包括其值 保存到文本文件中 以便下次打开程序时 任何更改都会自动保存到文本文件中 例如 balance total savings total expenses 我将如何将变量本身保存到文本文件中 而不仅仅是其值 此部分用于注册
  • 如何将 JPEG 图像转换为具有透明背景的 PNG 图像?

    我有一个 JPEG 格式的图像 带有白色背景和黑色圆圈 如何将此图像转换为 PNG 格式 使白色背景透明 黑色保留在那里 我也是一名程序员 如果 C 代码中有一些想法我会很高兴 我也在寻找转换器 工具 程序等任何东西 谢谢 Jeff 这是可
  • 如何将 Visual Studio 2005 的平台工具集添加到较新 IDE 版本的“平台工具集”列表中?

    我已经安装了 Visual Studio 2005 2015 我要使用 Visual Studio 2005 的平台工具集 但列表中没有这个变体 如何将Visual Studio 2005的平台工具集添加到Platform Toolset较
  • 如何在 Spark 中将 RowMatrix 更改为数组或将其导出为 CSV?

    我在 Scala 中有这样的代码 val mat CoordinateMatrix new CoordinateMatrix data val rowMatrix RowMatrix mat toRowMatrix val svd Sing
  • 在 Woocommerce 中保存并显示订单项自定义元数据

    我有一些自定义代码工作得很好 自从我将 Woocommerce 更新到版本 3 5 2 后 它就不再工作了 不确定是因为我更改了 WordPress 主题还是因为插件更新了 我的问题是自定义字段的值不会出现在 woocommerce 的订单
  • defer 语句和 return 之前的语句有什么区别?

    这有什么区别 navigationController popViewController animated true defer let rootVC navigationController topViewController as R
  • 如何使用 Swift 在 iOS 上通过异步操作同步运行两个函数

    让我们提出这个场景 具有异步网络操作的方法 func asyncMethodA gt String result String Alamofire manager request POST https www apiweb com apim
  • 获取我的 RAM 的制造商名称(WMI 未获取此信息)

    我需要获取有关 RAM 模块的完整信息 我尝试使用 WMI 来获取它 ManagementObjectSearcher searcher12 new ManagementObjectSearcher root CIMV2 SELECT FR
  • linux/unix 下是否有与 WinAPI 的 MAX_PATH 等效的东西?

    如果我想分配一个保证足够大以容纳任何有效的绝对路径 文件名的字符数组 在C中 那么它需要有多大 在 Win32 上 有 MAX PATH 定义 Unix linux 的等价物是什么 有一个PATH MAX 但是有点问题 来自错误部分真实路径