在C中引用使用多个名称的变量

在C中引用使用多个名称的变量,c,variables,C,Variables,在C中是否可以使用多个名称引用变量?我知道这可以通过指针来完成,但是不使用指针也可以。就像我们使用“typedef”对数据类型进行多重命名一样,变量的命名也类似 我有一个名为FILTER\u PROC\u LOAD\u interactivity的常量,如何使用“var1”这样的简单名称来引用它。您可能想使用宏 #define var1 FILTER_PROC_LOAD_INTERNSITY 但问题是:为什么? 一件事一个责任。您不想让代码的读者感到困惑。如果需要重命名变量名,那么首先变量名似

在C中是否可以使用多个名称引用变量?我知道这可以通过指针来完成,但是不使用指针也可以。就像我们使用“typedef”对数据类型进行多重命名一样,变量的命名也类似


我有一个名为FILTER\u PROC\u LOAD\u interactivity的常量,如何使用“var1”这样的简单名称来引用它。

您可能想使用宏

#define var1 FILTER_PROC_LOAD_INTERNSITY
但问题是:为什么? 一件事一个责任。您不想让代码的读者感到困惑。如果需要重命名变量名,那么首先变量名似乎是错误的

伊迪丝:

在这个例子中,我的可读性问题是什么

char *very_ugly_variable_name;
#define beautifulVariableName very_ugly_variable_name

void unmaintainable_old_function() {
   print(very_ugly_variable_name);
}

void myOtherNewFunction() {
   print(beautifulVariableName);
}

你一刻也不犹豫,非常丑陋的变量名和美丽的变量名是完全相同的(在名称范围和内存中)。

你可能想使用宏

#define var1 FILTER_PROC_LOAD_INTERNSITY
但问题是:为什么? 一件事一个责任。您不想让代码的读者感到困惑。如果需要重命名变量名,那么首先变量名似乎是错误的

伊迪丝:

在这个例子中,我的可读性问题是什么

char *very_ugly_variable_name;
#define beautifulVariableName very_ugly_variable_name

void unmaintainable_old_function() {
   print(very_ugly_variable_name);
}

void myOtherNewFunction() {
   print(beautifulVariableName);
}

你一点也不犹豫,非常丑陋的变量名和美丽的变量名是完全相同的(在名称范围和内存中)。

C语言似乎没有引用(给变量别名)但您可以使用指向该端的指针:
yourtype*var1=&FILTER\u PROC\u LOAD\u interactivity
,然后使用
*var1
获取常量的值。但是这看起来不是一个好主意-程序中的符号名更容易阅读和理解。

C语言似乎没有引用(为变量别名)但您可以使用指向该端的指针:
yourtype*var1=&FILTER\u PROC\u LOAD\u interactivity
,然后使用
*var1
获取常量的值。但这看起来不是一个好主意——程序中的符号名称更容易阅读和理解。

哦,是的,谢谢。我忘了宏。我将在代码中添加注释,使其更具可读性。一个简短的名字很方便,因为我必须多次使用它。”“var1”仅用于说明。为什么这是一个有效的反问题,请通过将var1重命名为可读的名称来使代码可读。为方便起见而使用短名称以牺牲可读性是不明智的。您没有在命令提示符中重复输入它,您只是在源代码中编写了几次,并且源代码可能会被重复读取。哦,是的,谢谢。我忘了宏。我将在代码中添加注释,使其更具可读性。一个简短的名字很方便,因为我必须多次使用它。”“var1”仅用于说明。为什么这是一个有效的反问题,请通过将var1重命名为可读的名称来使代码可读。为方便起见而使用短名称以牺牲可读性是不明智的。您没有在命令提示符中重复输入它,您只是在源代码中编写了几次,并且源代码可能会被重复读取。