gpt4 book ai didi

c - 全局定义的变量作为函数返回

转载 作者:行者123 更新时间:2023-12-04 16:23:06 25 4
gpt4 key购买 nike

当传递星期几号时,我有返回指向星期几名称的指针的函数。我觉得我通过使用全局定义的字符串作为函数返回做了一些非法的事情。这样的风格可以接受吗?

const char* const SUN_NAME = "Sun";
const char* const MON_NAME = "Mon";
const char* const TUE_NAME = "Tue";
const char* const WED_NAME = "Wed";
const char* const THU_NAME = "Thu";
const char* const FRI_NAME = "Fri";
const char* const SAT_NAME = "Sat";


char* dayOfWeekToChar(int day)
{
switch (day)
{

case SUN_NR :
return SUN_NAME;
break;
case MON_NR :
return MON_NAME;
break;
case TUE_NR :
return TUE_NAME;
break;
case WED_NR :
return WED_NAME;
break;
case THU_NR :
return THU_NAME;
break;
case FRI_NR :
return FRI_NAME;
break;
case SAT_NR :
return SAT_NAME;
break;

default:
break;
}
};

最佳答案

详细说明Eugene Sh所说的:

  1. 这是合法且可接受的。

  2. 不过我会把它们放在数组中:

示例:

   const char * DaysOfWeekNames[] = {
"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"
};

enum DaysOfWeek {
SUN_NR, MON_NR,TUE_NR, WED_NR, THU_NR, FRI_NR, SAT_NR
};

const char * dayOfWeekToChar(enum DaysOfWeek day)
{
return DaysOfWeekNames[day];
}

关于c - 全局定义的变量作为函数返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69855930/

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