【发布时间】:2013-07-30 12:25:09
【问题描述】:
所以今天的练习要我用这个header.h显然是为了给我操作符对应的功能。
#ifndef __HEADER__
#define __HEADER__
operator operator_table[] = {{"-", &function_sub}, \
{"+", &function_add}, \
{"*", &function_mul}, \
{"/", &function_div}, \
{"%", &function_mod}};
#endif
我注意到的第一件事是 operator 类型没有定义,所以也许我应该将 typedef 它设置为 int ?
然后真正的问题开始了,我从一开始就阅读了K&R和C Primer Plus,并没有遇到过这种语法,或者至少我不认识它,是不是某种dictionary?我该如何使用它?
【问题讨论】:
-
它似乎是一个结构数组,该结构(名为
operator)包含一个字符串和一个函数指针。没有特殊的语法,只是普通的数组定义和初始化。 -
“/”是什么意思?像分隔符?以及如何访问这些功能?
-
`\` 是预处理器的一部分,是一个续行“操作符”。它只是意味着预处理器将为编译器创建一行。
-
您的评论获得了 6 次以上的投票,您能回答一下,以便我接受吗?谢谢!
标签: c arrays syntax dictionary header