C++中的glob
函数可以用来处理通配符。通配符是一种用来匹配文件名的模式,其中包含了一些特殊字符,如*
和?
。glob
函数可以根据通配符模式匹配相应的文件名,并返回匹配的文件列表。
下面是一个使用glob
函数处理通配符的示例代码:
#include <iostream>
#include <glob.h>
int main() {
glob_t glob_result;
int ret = glob("*.txt", GLOB_TILDE, NULL, &glob_result);
if (ret == 0) {
for (size_t i = 0; i < glob_result.gl_pathc; i++) {
std::cout << glob_result.gl_pathv[i] << std::endl;
}
}
globfree(&glob_result);
return 0;
}
在这个示例中,glob
函数会匹配当前目录下所有以.txt
结尾的文件,并将匹配的文件名存储在glob_result
结构体中。然后我们可以通过glob_result.gl_pathc
和glob_result.gl_pathv
来遍历并输出匹配的文件名。
需要注意的是,在使用完glob
函数后,需要调用globfree
函数释放内存。