首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

C 語言 fopen 文件名格式:相對路徑與絕對路徑完全指南

     編輯:程式設計疑難解答

兩種寫法

  1. 相對路徑:相對於**程序運行時的當前工作目錄**。
    FILE *fp = fopen("file1", "r"); // 需確保執行目錄包含 file1
  2. 絕對路徑:完整路徑,**Windows 建議用正斜槓**或雙反斜槓。
    FILE *fp = fopen("C:/file/file1", "r");
    FILE *fp = fopen("C:\\\\file\\\\file1", "r");

最佳實踐

  • 發布軟件時,用 argv[0] 獲取可執行文件路徑,構建數據文件絕對路徑,避免「雙擊運行 vs 命令行運行」工作目錄不一致導致找不到文件。
  • 跨平台項目優先用正斜槓 /,Windows C 標準庫完全支持。
  • 打開失敗時必檢查 errno / perror,區分「文件不存在」「權限不足」「路徑過長」等錯誤碼。

常見坑

現象原因修正
IDE 中能跑,雙擊 exe 失敗工作目錄不同用絕對路徑或 GetModuleFileName 定位
路徑含中文亂碼編碼不一致 (GBK vs UTF-8)源文件存 UTF-8,調用 _wfopen 寬字符版
單反斜槓 \ 被轉義C 字符串轉義寫雙反斜槓 \\\\ 或正斜槓 /
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved