Ⅰ 關於c語言顯示目錄文件
注釋如下猜銀
main()
{
clrscr(); // 清屏
system("dir e:\\younger"); //system函數的作用是執行外部程序,這里
執行了一個DOS命令"dir e:\younger"
"\\"是C語言的轉義字元,解釋成"\"
getch(); //從標准輸入獲得字元,這里用作暫停程序正兆冊
}
改成如下便舉宏可自己輸入路徑:
/* test.c */
#include<process.h>
#include<string.h>
int main(int argc, char* argv[])
{
char str[128] = {"dir "};
clrscr();
system(strcat(str, argv[1]));
getch();
}
編譯出來之後得到一個可執行文件test,然後這樣使用:
C:\>test 你自己的路徑
就ok了
Ⅱ 如何用C語言獲取目錄下的文件和目錄列表
#include <stdio.h>
#include <stdlib.h>
void main()
{
system("DIR /D C:\\ /s /B > a.log");
}
C:\下的所有文件夾,子文件夾里所有文件,轉向到 文本文件 a.log 里。
格式:
C:\aaa\bbb\ccc\...
只要文件夾命令:
dir /d c: /B /ad
只要文件夾命令,含子文件夾:
dir /d c: /B /ad /s
Ⅲ C語言在指定目錄下顯示指定文件,求代碼解釋, 不吝感謝!
關鍵是這句:dirp->d_name + (size - 4)
dirp->d_name是一個字元指磨好梁針,假如現在有 "abc.mp3",
dirp->d_name則指向'a',dirp->d_name+1指向'b'襪悔...,那麼此時size=strlen("abc.mp3")=7,
dirp->d_name+(7-4)=dirp->d_name+3,dirp->d_name+3指向'.',
此時dirp->d_name+3指向字元瞎運串".mp3".然後就去跟常量字元串".mp3"比較,如果不相同就執行下一次循環
Ⅳ c語言目錄操作
我不知道樓主具體指的是什麼?什麼叫取得目錄中的函數名?是指文件名嗎?
如果是的話,看這個程序:
#include <process.h>
main()
{
clrscr();
system("dir e:\\younger"); /*"e:\\younger"可以改成任意目錄*/
getch();
}
這樣可以嗎?
Ⅳ 如何用c語言列出目錄樹
給你一個參考:
相關函數:opendir
表頭文件:#include <ftw.h>
定義函數:int ftw(const char *dir, int (*fn) (const *file, const struct stat *sb, int flag), int depth)
函數說明:ftw() 會從參數dir指定的目錄開始,往下一層層地遞歸式遍歷子目錄。ftw()會傳三個參數給fn(), 第一個參數*file指向當時所在的目錄路徑,第二個參數是*sb, 為stat結構指針,第三個參數為旗標,有下面幾種可能值
FTW_F 一般文件
FTW_D 目錄
FTW_DNR 不可讀取的目錄,此目錄以下將不被遍歷
FTW_SL 符號連接
FTW_NS 無法取得stat結構數據,有可能是許可權問題
最後一個參數depth代表ftw()在進行遍歷目錄時同時打開的文件數。ftw()在遍歷時每一層目錄至少需要一個文件描述詞,如果遍歷時用完了depth所給予的限制數目,整個遍歷將因不斷地關文件和開文件操作而顯得緩慢
如果要結束ftw()的遍歷,fn()只需返回一非零值即可,此值同時也會是ftw()的返回值。否則ftw()會試著走完所有的目錄,然後返回0
返 回 值:遍歷中斷則返回fn()函數的返回值,全部遍歷則返回0,若有錯誤發生則返回-1
附加說明:由於ftw()會動態配置內存使用,請使用正常方式(fn函數返回非零值)來中斷遍歷,不要在fn函數中使用longjmp()
示例:
/*列出/etc/X11目錄下的子目錄*/
#include <sys/stat.h>
#include <unistd.h>
#include <ftw.h>
int fn(const char *file, const struct stat *sb, int flag)
{
if(flag == FTW_D)
printf("%s --- directory\n", file);
else
printf("%s \n",file);
return 0;
}
int main()
{
ftw("/etc/X11",fn,500);
}
Ⅵ 請教如何使用c語言代碼 打開文件所在目錄
#include<stdio.h>
#include<stdlib.h>
intmain(){
charcommand[50];
charpath[50];
printf("請輸入文件路徑:");
scanf("%s",path);
sprintf(command,"explorer%s",path);
system(command);
return0;
}
Ⅶ c語言編譯完成顯示沒有目錄
需要把 game.h 文件跟 acq.cpp 源代碼文件 放在同一個目錄下面,然後編譯才能包含進來。