确定程序的运行目录
要检索程序执行目录的完整路径,可以使用各种特定于平台的方法被雇用。以下是两种常见的方法:
Windows:
Windows 提供 GetModuleFileName 函数,该函数返回正在执行的程序的完整路径。要使用它,您可以声明一个字符缓冲区 (char pBuf[256]) 来存储路径及其长度 (size_t len = sizeof(pBuf))。然后,调用 GetModuleFileName,传递 NULL 作为模块句柄,并将缓冲区地址作为第二个参数。该函数返回以字符为单位的路径长度。
Linux:
在 Linux 上,您可以使用 readlink 函数。它接受 /proc/self/exe 路径作为源,并接受缓冲区地址作为目标。返回值是写入缓冲区的字节数,该数必须小于缓冲区的长度 (len - 1)。请记住在写入缓冲区后附加一个空终止符。
此方法与平台或文件系统无关。然而,它为特定平台和文件系统提供了解决方案,使其对于各种场景都很有价值。
以上是Windows和Linux下如何确定程序的运行目录?的详细内容。更多信息请关注PHP中文网其他相关文章!