簡體   English   中英

獲取C中文件的路徑

[英]Getting the path of a file in C

我正在編寫一個 C 程序來處理文件的內容。 我知道使用控制台輸入接收文件路徑的一種方法。 但我需要使用另一種方式,“打開文件”屬性。 例如,在 Windows 上,使用程序打開文件的一種方法是將文件拖放到程序可執行文件上。

這是一張照片:

在此處輸入圖像描述

我不知道如何獲取 C 中的文件路徑,您能告訴我如何在 Windows/MacOS/Linux 上執行此操作嗎?

伙計們別管了。 我找到了這個問題的答案。

#include <stdio.h>

#include <string.h>

int main(int argc, char *argv[], char *envp[]){
    printf("---------------------------------------------------------------------------\n");
    printf("%d\n", argc);
    printf("---------------------------------------------------------------------------\n");
    for (int i = 0; argv[i] != NULL; i++)
        printf("%s\n", argv[i]);
    printf("---------------------------------------------------------------------------\n");
    for (int i = 0; envp[i] != NULL; i++)
        printf("%s\n", envp[i]);
    printf("---------------------------------------------------------------------------\n");
    getchar();
    return 0;
}

如果您復制提供的代碼並使用拖放方法運行程序,您會注意到路徑值存儲在 `argv 數組中。

在此處輸入圖像描述

在此處輸入圖像描述

所以,答案是這樣的:

#include <stdio.h>

int main(int argc, char *argv[], char *envp[]){
    if (argv[1] != NULL)
        printf("%s\n", argv[1]);
    return 0;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM