C++擷取當前路徑實現技巧分享

來源:互聯網
上載者:User

C++程式設計語言在實際應用中,可以協助開發人員輕鬆的實現各種功能與需求。比如在對檔案的操作上就可以靈活的運用各種個方法來實現。那麼接下來我們將會給大家介紹一下C++擷取當前路徑的相關實現方法。

C++擷取當前路徑相關實現程式碼範例:

1.以下代碼來自CSDN 2004 VC編程經驗總結.

 
  1. {   
  2. CString strPath;   
  3. GetCurrentDirectory(MAX_PATH,strPath.GetBuffer(MAX_PATH));   
  4. strPath.ReleaseBuffer();   
  5. return strPath;   

2.以下代碼來自TZ MFC.NET Primer 1.01,

 
  1. CString CPropertyGridSampleApp::GetCurrWorkingDir()   
  2. {   
  3. CString strPath;   
  4. TCHAR szFull[_MAX_PATH];   
  5. TCHAR szDrive[_MAX_DRIVE];   
  6. TCHAR szDir[_MAX_DIR];   
  7. ::GetModuleFileName(NULL, szFull, sizeof(szFull)/sizeof(TCHAR));   
  8. _tsplitpath(szFull, szDrive, szDir, NULL, NULL);   
  9. _tcscpy(szFull, szDrive);   
  10. _tcscat(szFull, szDir);   
  11. strPath = CString(szFull);   
  12. return strPath;   

使用第一段C++擷取當前路徑的代碼可以獲得應用程式運行時所在目錄。但由於在使用Microsoft Visual Studio.NET編譯並運行項目時,真正的宿主是IDE,所以目前的目錄是項目所在目錄,並不是DEBUG或者RELEASE目錄,這一點需要開發人員注意。而第二段代碼可以動態解決此問題。並且增加了Unicode支援(TCHAR)。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.