FindFirstFile()的结果很奇怪
我在F盘根目录放了一个叫“1.abcdef”的文件,然后执行下面的代码,输出结果很诡异
#include <stdio.h>
#include <Windows.h>
#include <tchar.h>
void Test1()
{
LPCTSTR TEST_NAME[] = {
_T("F:\\*.a"),
_T("F:\\*.ab"),
_T("F:\\*.abc"),
_T("F:\\*.abcd"),
_T("F:\\*.abcde"),
_T("F:\\*.abcdef"),
};
for (size_t i=0; i<sizeof(TEST_NAME)/sizeof(TEST_NAME[0]); ++i)
{
_tprintf_s(_T("%12s\t"), TEST_NAME[i]);
WIN32_FIND_DATA data = {0};
HANDLE h = ::FindFirstFile( TEST_NAME[i], &data );
if (h == INVALID_HANDLE_VALUE)
{
_tprintf_s(_T("(no found)\n"));
}
else
{
_tprintf_s( _T("%s\n"), data.cFileName );
::FindClose(h);
}
}
}
void main()
{
Test1();
system("pause");
}