标准C/C++函数最好,如果标准C/C++里没有,请分别给出在Windows和Linux下的方案。
据说chdir可以修改当前目录,但当前目录是在哪里用什么获取呢?
main的第0个参数是命令本身,但是可执行文件的路径是什么呢?
20 个解决方案
#1
long getcwd(char *buf, unsigned long size);
#2
用Qt吧,Windows/Linux/Mac都是一样的函数
#3
chai2010(C/C++/Qt/OpenGL/OpenCV...)
QT是方便,不过QT要收费。而且为了一个小小的Win32程序,用QT那么庞大的库,不划算吧。
QT是方便,不过QT要收费。而且为了一个小小的Win32程序,用QT那么庞大的库,不划算吧。
#4
GetCurrentDirectory
#5
expter(Acm/STL/MFC/Spring) ( ) 信誉:100 2007-9-8 14:29:57 得分: 0
GetCurrentDirectory 不能在Linux下使用吧。
获取当前路径的问题 akirya(坏[其实偶不是什么所谓的坏人]) 已经解决了,用
long getcwd(char *buf, unsigned long size);
现在解决剩下那个问题吧……怎么获取程序路径:不用Windows API更不用MFC或者BCB。QT、GTK之类的东西也不用。
GetCurrentDirectory 不能在Linux下使用吧。
获取当前路径的问题 akirya(坏[其实偶不是什么所谓的坏人]) 已经解决了,用
long getcwd(char *buf, unsigned long size);
现在解决剩下那个问题吧……怎么获取程序路径:不用Windows API更不用MFC或者BCB。QT、GTK之类的东西也不用。
#6
函数名称: getcwd
函数原型: char *getcwd(char *dir,int len)
函数功能: 得到当前路径名称
函数返回: 指向dir的指针
参数说明: len-路径最大长度.dir-路径字符串.
所属文件: <dir.h>
#include <stdio.h>
#include <dir.h>
int main()
{
char buffer[MAXPATH];
getcwd(buffer, MAXPATH);
printf("The current directory is: %s", buffer);
return 0;
}
函数原型: char *getcwd(char *dir,int len)
函数功能: 得到当前路径名称
函数返回: 指向dir的指针
参数说明: len-路径最大长度.dir-路径字符串.
所属文件: <dir.h>
#include <stdio.h>
#include <dir.h>
int main()
{
char buffer[MAXPATH];
getcwd(buffer, MAXPATH);
printf("The current directory is: %s", buffer);
return 0;
}
#7
dir.h
这个头文件可能被命名为 direct.h 或者其他 ...
这个头文件可能被命名为 direct.h 或者其他 ...
#8
查看include文件夹下的dir.h
#9
获取当前目录的问题已经解决了。
现在需要获取程序路径啊。就是当前运行的可执行文件的路径啊!
现在需要获取程序路径啊。就是当前运行的可执行文件的路径啊!
#10
当前工作目录 getcwd
程序目录 GetModuleFileName(NULL, str, sizeof(str))
程序目录 GetModuleFileName(NULL, str, sizeof(str))
#11
当前目录:
getcwd
程序目录:
win32:GetModuleFileName
linux:readlink
getcwd
程序目录:
win32:GetModuleFileName
linux:readlink
#12
可执行文件的路径应该是没有标准库的方法得到了。
#13
Linux 下可以用 readlink /proc/self/exe 的方法得到。
#14
getcwd当前目录
GetModuleFileName
GetModuleFileName
#15
是不是忽略了 '.' 呢?当前目录: ".\\yourfilesOryourDir"
#16
.\\ ----------- 应该是这个!!
#17
很好,很好,受教了~~
#18
“当前目录”是个什么概念??
#19
“当前目录”是个什么概念?? 它与 应用程序(exe)所以目录有什么区别呢?
#20
此方法不错
#21
#1
long getcwd(char *buf, unsigned long size);
#2
用Qt吧,Windows/Linux/Mac都是一样的函数
#3
chai2010(C/C++/Qt/OpenGL/OpenCV...)
QT是方便,不过QT要收费。而且为了一个小小的Win32程序,用QT那么庞大的库,不划算吧。
QT是方便,不过QT要收费。而且为了一个小小的Win32程序,用QT那么庞大的库,不划算吧。
#4
GetCurrentDirectory
#5
expter(Acm/STL/MFC/Spring) ( ) 信誉:100 2007-9-8 14:29:57 得分: 0
GetCurrentDirectory 不能在Linux下使用吧。
获取当前路径的问题 akirya(坏[其实偶不是什么所谓的坏人]) 已经解决了,用
long getcwd(char *buf, unsigned long size);
现在解决剩下那个问题吧……怎么获取程序路径:不用Windows API更不用MFC或者BCB。QT、GTK之类的东西也不用。
GetCurrentDirectory 不能在Linux下使用吧。
获取当前路径的问题 akirya(坏[其实偶不是什么所谓的坏人]) 已经解决了,用
long getcwd(char *buf, unsigned long size);
现在解决剩下那个问题吧……怎么获取程序路径:不用Windows API更不用MFC或者BCB。QT、GTK之类的东西也不用。
#6
函数名称: getcwd
函数原型: char *getcwd(char *dir,int len)
函数功能: 得到当前路径名称
函数返回: 指向dir的指针
参数说明: len-路径最大长度.dir-路径字符串.
所属文件: <dir.h>
#include <stdio.h>
#include <dir.h>
int main()
{
char buffer[MAXPATH];
getcwd(buffer, MAXPATH);
printf("The current directory is: %s", buffer);
return 0;
}
函数原型: char *getcwd(char *dir,int len)
函数功能: 得到当前路径名称
函数返回: 指向dir的指针
参数说明: len-路径最大长度.dir-路径字符串.
所属文件: <dir.h>
#include <stdio.h>
#include <dir.h>
int main()
{
char buffer[MAXPATH];
getcwd(buffer, MAXPATH);
printf("The current directory is: %s", buffer);
return 0;
}
#7
dir.h
这个头文件可能被命名为 direct.h 或者其他 ...
这个头文件可能被命名为 direct.h 或者其他 ...
#8
查看include文件夹下的dir.h
#9
获取当前目录的问题已经解决了。
现在需要获取程序路径啊。就是当前运行的可执行文件的路径啊!
现在需要获取程序路径啊。就是当前运行的可执行文件的路径啊!
#10
当前工作目录 getcwd
程序目录 GetModuleFileName(NULL, str, sizeof(str))
程序目录 GetModuleFileName(NULL, str, sizeof(str))
#11
当前目录:
getcwd
程序目录:
win32:GetModuleFileName
linux:readlink
getcwd
程序目录:
win32:GetModuleFileName
linux:readlink
#12
可执行文件的路径应该是没有标准库的方法得到了。
#13
Linux 下可以用 readlink /proc/self/exe 的方法得到。
#14
getcwd当前目录
GetModuleFileName
GetModuleFileName
#15
是不是忽略了 '.' 呢?当前目录: ".\\yourfilesOryourDir"
#16
.\\ ----------- 应该是这个!!
#17
很好,很好,受教了~~
#18
“当前目录”是个什么概念??
#19
“当前目录”是个什么概念?? 它与 应用程序(exe)所以目录有什么区别呢?
#20
此方法不错