gpt4 book ai didi

c - 用宏C编程返回

转载 作者:太空宇宙 更新时间:2023-11-04 05:06:07 26 4
gpt4 key购买 nike

此代码始终返回 -1,即使 fopen() 函数已成功执行。有没有我忽略的东西。

void nullCheck(FILE* checkVar)  {
if(checkVar==NULL) {
#define _NULL_ERROR
}
}

int readFile(char* _name, char* storeArray) {
FILE* fp;
fp=fopen(_name,READ_ONLY_MODE);
nullCheck(fp);
#ifndef _NULL_ERROR
char c=0;
while((c=getc(fp))!=EOF) {
*(storeArray+i)=c;
i+=1;
}
#endif
#ifdef _NULL_ERROR
#undef _NULL_ERROR
return -1;
#endif
return 1;
}

谢谢!

最佳答案

Oy va voy!宏在代码编译时定义和未定义,不是在运行时!它们不受“if”和“then”等控制流语句的影响——它们甚至在这些语句的编译开始之前就已被处理!

关于c - 用宏C编程返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5379463/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com