c语言findfirst
① 关于c语言中文件搜索函数。
函数名: findfirst(); findnext ();
功 能: 搜索磁盘目录; 取得下一个匹配的findfirst模式的文件 ;
用 法:
int findfirst(char *pathname, struct ffblk *ffblk, int attrib);
int findnext(struct ffblk *ffblk);
举例:
/* findnext example */
#include <stdio.h>
#include <dir.h>
int main(void)
{
struct ffblk ffblk;
int done;
printf("Directory listing of *.*\n");
done = findfirst("*.*",&ffblk,0);
while (!done)
{
printf(" %s\n", ffblk.ff_name);
done = findnext(&ffblk);
}
② 镐庢牱浣跨敤C璇瑷鍒楀嚭镆愪釜鐩褰曚笅镄勬枃浠
C璇瑷链韬娌℃湁鎻愪緵璞dir_list()杩欐牱镄勫嚱鏁版潵鍒楀嚭镆愪釜鐩褰曚笅镓链夌殑鏂囦欢銆备笉杩囷纴鍒╃敤C璇瑷镄勫嚑涓鐩褰曞嚱鏁帮纴浣犲彲浠ヨ嚜宸辩紪鍐欎竴涓猟ir_list()鍑芥暟銆
棣栧厛锛屽ご鏂囦欢dos锛岿瀹氢箟浜嗕竴涓猣ind_t缁撴瀯锛屽畠鍙浠ユ弿杩瘅OS涓嬬殑鏂囦欢淇℃伅锛屽寘𨰾鏂囦欢钖嶃佹椂闂淬佹棩链熴佸ぇ灏忓拰灞炴с傚叾娆★纴C缂栬疟绋嫔簭搴扑腑链埙dos_findfirst()鍜宊dos_findnext()杩欐牱涓や釜鍑芥暟锛屽埄鐢ㄥ畠浠鍙浠ユ垒鍒版煇涓鐩褰曚笅绗﹀悎镆ユ垒瑕佹眰镄勭涓涓鎴栦笅涓涓鏂囦欢銆
dos_findfirst()鍑芥暟链変笁涓鍙傛暟锛岀涓涓鍙傛暟鎸囨槑瑕佹煡镓剧殑鏂囦欢钖嶏纴渚嫔备綘鍙浠ョ敤钬*.*钬濇寚鏄庤佹煡镓炬煇涓鐩褰曚笅镄勬墍链夋枃浠躲傜浜屼釜鍙傛暟鎸囨槑瑕佹煡镓剧殑鏂囦欢灞炴э纴渚嫔备綘鍙浠ユ寚鏄庡彧镆ユ垒闅愬惈鏂囦欢鎴栧瓙鐩褰曘傜涓変釜鍙傛暟鏄鎸囧悜涓涓猣ind_t鍙橀噺镄勬寚阍堬纴镆ユ垒鍒扮殑鏂囦欢镄勬湁鍏充俊鎭灏嗗瓨鏀惧埌璇ュ彉閲忎腑銆
dos_findnext()鍑芥暟鍦ㄧ浉搴旂殑鐩褰曚腑缁х画镆ユ垒鐢盻dos_findfirst()鍑芥暟镄勭涓涓鍙傛暟鎸囨槑镄勬枃浠躲俖dos_findnext()鍑芥暟鍙链変竴涓鍙傛暟锛屽畠钖屾牱鏄鎸囧悜涓涓猣ind_t鍙橀噺镄勬寚阍堬纴镆ユ垒鍒板垰鏂囦欢镄勬湁鍏充俊鎭钖屾牱灏嗗瓨鏀惧埌璇ュ彉閲忎腑銆
鍒╃敤涓婅堪涓や釜鍑芥暟鍜宖ind_t缁撴瀯锛屼綘灏卞彲浠ラ亶铡嗙佺洏涓婄殑镆愪釜鐩褰曪纴骞跺垪鍑鸿ョ洰褰曚笅镓链夌殑鏂囦欢锛岃风湅涓嬩緥锛
#include
#include
#include
#include
#include
#include
typedef struct find_t FILE_BLOCK
void main(void);
void main(void){FILE_BLOCK f-block; /* Define the find_t structure variable * /
int ret_code; / * Define a variable to store the return codes * /
/ * Use the "*.*" file mask and the 0xFF attribute mask to list
all files in the directory, including system files, hidden
files, and subdirectory names. * /
ret_code = _dos_findfirst(" *. * ", 0xFF, &f_block);
/* The _dos_findfirst() function returns a 0 when it is successful
and has found a valid filename in the directory. * /
while (ret_code == 0){/* Print the file's name * /
printf(" %-12s\n, f_block, name);
/ * Use the -dos_findnext() function to look
③ c语言中的find函数是什么意思呀
答:c语言中的find函数提供了一种对数组、STL容器进行查找的方法。
函数功能----
查找一定范围内元素的个数。
查找[first,last)范围内,与toval等价的第一个元素,返回一个迭代器。如果没有这个元素,将返回last。
④ C语言怎么读取某一文件夹下的所有文件夹和文件
读取的代码方式如下:
intmain()
{
longfile;
struct_finddata_tfind;
_chdir("d:\");
if((file=_findfirst("*.*",&find))==-1L)
{
printf("空白! ");
exit(0);
}
printf("%s ",find.name);
while(_findnext(file,&find)==0)
{
printf("%s ",find.name);
}
_findclose(file);
return0;
}