状态字作为函数的 return 值?
Status word as a return value for a function?
我正在用 C 语言做作业,我被要求创建一个 return 是一个 状态词 的函数,但我不知道这意味着什么更不用说如何声明 return 类型以及如何确定 returned 状态字。
请帮忙。
状态字可以是一个变量(有一个值),它告诉我们函数的执行情况——它是否成功地完成了它应该做的事情。
例如:
int doSomething()
{
if (somethingCanBeDone)
return SUCCESS;
else
return FAILURE;
}
这里,SUCCESS
和 FAILURE
是函数返回的状态字,表示函数是否已成功完成它必须完成的工作。
您可以通过两种方式完成。
使用#define
语句来定义状态字。
#define SUCCESS 1
#define FAILURE 0
int doSomething()
{
if (somethingCanBeDone)
return SUCCESS;
else
return FAILURE;
}
int main()
{
int returnval = doSomething();
if (returnval == SUCCESS)
{
//Do something
}
else
{
//Do something else.
}
}
使用const int
语句来定义状态字。
const int SUCCESS = 1;
const int FAILURE = 0;
这些类似于宏,但由于它们讲述了函数的状态,因此被称为状态词。
Complementing volerag 的 post 可以添加这样的方式:
typedef enum {
FAIL,
SUCCESS
} STATUS;
STATUS getStatus() {
// ...
return ...;
}
但这并没有太大的区别。
我正在用 C 语言做作业,我被要求创建一个 return 是一个 状态词 的函数,但我不知道这意味着什么更不用说如何声明 return 类型以及如何确定 returned 状态字。 请帮忙。
状态字可以是一个变量(有一个值),它告诉我们函数的执行情况——它是否成功地完成了它应该做的事情。
例如:
int doSomething()
{
if (somethingCanBeDone)
return SUCCESS;
else
return FAILURE;
}
这里,SUCCESS
和 FAILURE
是函数返回的状态字,表示函数是否已成功完成它必须完成的工作。
您可以通过两种方式完成。
使用
#define
语句来定义状态字。#define SUCCESS 1 #define FAILURE 0 int doSomething() { if (somethingCanBeDone) return SUCCESS; else return FAILURE; } int main() { int returnval = doSomething(); if (returnval == SUCCESS) { //Do something } else { //Do something else. } }
使用
const int
语句来定义状态字。const int SUCCESS = 1; const int FAILURE = 0;
这些类似于宏,但由于它们讲述了函数的状态,因此被称为状态词。
Complementing volerag 的 post 可以添加这样的方式:
typedef enum {
FAIL,
SUCCESS
} STATUS;
STATUS getStatus() {
// ...
return ...;
}
但这并没有太大的区别。