为了提高之前的程序效率,想把python实现的代码改用C++实现,顺便再学习一下C++。

 

首先遇到的就是要获取当前工作目录,在网上搜索发现可以直接利用main(int args, char **argv)中的argv[0],复习了一下指针的指针用法,函数的声明。

 
  
  1. using namespace std;  
  2. #include <iostream>  
  3. #include <string>  
  4.  
  5. int main(int args, char **argv) {  
  6.     string getCwd(char **);  
  7.     string path = getCwd(argv);  
  8.     cout << path << endl;  
  9. }  
  10.  
  11. string getCwd(char **argv){  
  12.     //获取当前工作目录  
  13.     string path;  
  14.     path = argv[0];  
  15.     return path;  

 

另外还有一种方法

 
  
  1. using namespace std;  
  2. #include <iostream>  
  3. #include <string>  
  4. #include <unistd.h>  
  5.  
  6. string getCwd(){  
  7.     //获取当前工作目录  
  8.     string path;  
  9.     path = getcwd(NULL,0);  
  10.     return path;  
  11. }  
  12.  
  13. int main(int argc, char **argv) {  
  14.     string path = getCwd();  
  15.     cout << path << endl;  
  16. }  

 

这两种方法有所区别,第一种输出的路径是当前程序所在的路径,第二种输出的是Project所在的路径