C语言判断函数是否存在 c语言中判断

C语言,判断一个文件是否存在

你贴的这个函数PathFileExists并不是C语言提供的库函数,而是windows系统提供的系统调用,如果你是初学者,尽量用C语言提供的库函数来实现功能,你可以这样:

站在用户的角度思考问题,与客户深入沟通,找到安国网站设计与安国网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站制作、企业官网、英文网站、手机端网站、网站推广、域名注册、网络空间、企业邮箱。业务覆盖安国地区。

int exist(char *file) //传入想要判断的路径字符串指针

{

FILE *fp;

fp=fopen(file,"r"); //fopen是一个C库函数,用于打开文件,"r"是只读模式,在这种模式下,如果文件存在,则能成功以只读模式打开,fopen返回一个非0的文件描述符,如果文件不存在,则fopen返回NULL(NULL意思是空)。正好可以利用这一点来判断文件是否存在

if(fp=NULL)

return 0; //不存在返回0

else

{

fclose(fp); //存在的话,要先把之前打开的文件关掉

return 1; //然后返回1

}

}

这样,你就可用这里定义的exist函数判断文件是否存在了。比如

if(exist("a.txt")==0)printf("不存在!");

else printf("存在!");

如果你真想用PathFileExists这个函数,那么也很简单,LPCTSTR你可以简单理解为就相当于char*,这是windows封装的一个数据类型。_in是一个修饰符,表示参数是传入给PathFileExists用的而不是由PathFileExists传出来的。这个函数可以这样用:

if(PathFileExists("a.txt")==FALSE)printf("不存在!");

else printf("存在!");

用这个函数时注意加头文件windows.h

有问题请继续追问啊

在C语言中怎样判断一个调用函数是否成立,

int f(int i)这个函数不是有返回值(返回值的类型为int)吗,你拿返回值判断就可以了啊,

这样你可以在f的函数中进行判断,如果i=0时返回是错误的,那么就返回0。

调用时,你可以这么写 int ret = f(0) if(ret ==0){printf("函数调用失败!!!")};

有不理解的继续追问,

判断文件是否存在 c语言 函数

排版後如下: int access(const char* szPathName){ #ifdef _WIN32 if ( _access(szPathName, 0) != 0 ) return -1; #else if ( access(szPathName, F_OK) != 0 ) return -1; #endif return 0; } 這是用到 preprocessor. 用在跨平台(platform)的各種編譯器. 各平台的 .h 會不同. 在微軟的平台會定義 _WIN32 這個符號. 所以這段話就成為 int access(const char* szPathName){ if ( _access(szPathName, 0) != 0 ) return -1; return 0; } 在其它平台不會定義 _WIN32 這個符號. 所以這段話就成為 int access(const char* szPathName){ if ( access(szPathName, F_OK) != 0 ) return -1; return 0; }


当前文章:C语言判断函数是否存在 c语言中判断
链接地址:http://pwwzsj.com/article/docsiih.html