chdir
可用於常量字符路徑(它需要const char *
),但不適用於用戶輸入的路徑(因爲它們的類型爲char *
)。有沒有辦法解決?如何更改C中的工作目錄?
0
A
回答
8
chdir
可以使用任意字符串。 const
修飾符意味着它不會修改您的字符串。
1
若要擴大Roman Cheplyaka's answer,類型限定符可以始終爲添加指針類型,但不會刪除。這意味着一個採用const char *
參數的函數實際上表示它可以採用char *
或 a const char *
(這實際上意味着它不會更改字符串的內容)。
類似地,具有volatile char *
參數的函數可以採取任一個char *
或volatile char *
作爲實際參數,而這需要一個const volatile char *
參數可以採取任何的char *
,const char *
,volatile char *
,或const volatile char *
的功能。
相關問題
- 1. 在C中更改工作目錄?
- 2. 如何更改當前工作目錄
- 3. 更改UFT工作目錄
- 4. Git更改工作目錄
- 5. 更改工作目錄
- 6. 更改工作目錄
- 7. 更改Xcode中的工作目錄
- 8. 在C程序中更改Linux shell中的工作目錄
- 9. SWI Prolog更改工作目錄/獲取當前工作目錄?
- 10. 編譯時在Visual C++中更改程序的工作目錄
- 11. 如何更改Visual Studio中的工作目錄
- 12. 如何更改Julia Jupyter中的工作目錄?
- 13. 如何更改Team City中NUnit測試的工作目錄?
- 14. 如何在Emacs中更改構建/調試的工作目錄?
- 15. 如何更改Jupyter Notebook中的工作目錄?
- 16. 更改msbuild.exe的工作目錄
- 17. 如何在JRuby中更改工作目錄?
- 18. 如何在Visual Studio中調試時更改工作目錄?
- 19. C#FileInfo,如何更改目錄?
- 20. 使用.htaccess更改工作目錄
- 21. 無法更改當前工作目錄
- 22. 更改目錄在Python,不工作
- 23. knitr with bash:更改工作目錄
- 24. Python 3.4 - win32com更改工作目錄
- 25. Java更改文件工作目錄
- 26. 更改工作目錄swi-Prolog
- 27. grunt + mochaTest:更改工作目錄?
- 28. 更改默認/工作目錄Xcode 3.2.6
- 29. 如何將工作目錄更改爲程序的位置
- 30. 如何更改Eclipse運行配置的工作目錄?
使用chdir()有什麼問題?它肯定可以和用戶提供的路徑一起使用......你試過了嗎?它失敗了嗎?怎麼樣?發佈一些代碼... – Juliano 2010-09-07 20:52:26
進一步羅曼的回答:一般來說,函數參數的const限定符意味着該函數不會嘗試修改您傳遞的內容,所以它*可以是一個字符串常量,而不是它*有*是一個常數。在'T const *'(對於任何類型的T)中,'const'基本上意味着「只讀」。 – 2010-09-07 21:14:51