我有一个由几个参数和一个唯一 ID 定义的元素数组,我创建了一个函数,它返回与某个唯一 ID 关联的元素,问题是如果输入了无效 ID(一个不是由数组存储),我的函数没有返回有效值。
我的问题是,如果函数不一定返回某些内容,我的代码将无法编译,有没有办法告诉编译器可以在此处执行此操作?
谢谢。
最佳答案
有几种方法可以做到这一点。
最简单的方法是返回一个不在有效值范围内的值。
另一种方法是再声明一个参数,该参数是指向用作错误的变量的指针。或者返回一个错误值并将有效值作为像引用一样声明的参数返回。
例如
int /* error */ f( T *valid_value );
另一种方法是返回一个包含两个值的结构,其中一个是报告失败或成功的 bool 值。
关于c - 当没有可返回的有效值时,在 C 中该怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42187469/