c - C 程序如何确定并打印它自己的可执行文件的位置?

标签 c file-io

我想写一个 C 程序来打印它的位置。

例如,如果我将程序 exe 文件放到 D:\myfolder\myc_prog,它应该打印相同的位置 D:\myfolder\myc_prog 如果我把该 exe 文件到位置 E:\mynewfold\ ,它应该打印更新的位置 E:\mynewfold.

实际上,我不知道该怎么做,这就是为什么我无法为这个问题提供太多细节。

最佳答案

由于您使用的是 Windows,GetModuleFileName应该做的伎俩。只需为 hModule 参数传递 NULL。如果您想处理长文件名(您通常会这样做),请务必仔细阅读文档。您还必须去除可执行文件的名称以获取目录路径。一种快速而肮脏的方法是删除最后一个 \ 之后的所有内容。

关于c - C 程序如何确定并打印它自己的可执行文件的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16618641/

相关文章:

c - 具有随机值的简单链表

python - 将 StringIO 的内容写入文件的最佳方法是什么?

c - C中结构的不同语法

c - 如何在我的 C 程序中获取特定格式的输入

ios - 无法通过测试用例 iOS 将数据插入 sqlite 数据库

java - 最后一行仅在 Java 中部分打印

c - 为什么以下打印 'Resource temporarily unavailable' ?

java - 如何使用 nextLine() 解决 NoSuchElementException?

c - 使用 fgets 读取文本文件时出现奇怪的符号

c - 在 C 中处理数组嵌套结构的最佳方法