我在一本关于语言描述的书中看到
On the other hand, a name can be bound to no object (a dangling pointer),
one object (the usual case), or several objects (a parameter name in a
recursive function).
如何将名称绑定到多个对象?这不是我们所称的数组吗?例如,在数组中,所有元素都有相同的名称,但是有索引吗?对于递归函数,如下面的示例:
x = 0
def f(y):
global x
x += 1
if x
我有一个关于ELF动态符号表的问题。对于类型为FUNC的符号,我注意到在一些二进制文件中值为0。但在其他二进制文件中,它有一些非零值。这两个双生子都是gcc写的,我想知道这有什么区别?是否有任何编译器选项来控制这一点?
编辑:这是readelf -dyn-syms prog1的输出。
Symbol table '.dynsym' contains 5 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 0
我有一个嵌入式操作系统,它需要通过编译时静态地定义其资源。
因此,例如。
#define NUM_TASKS 200
目前,我有一个头文件,每个开发人员都需要声明他/她需要的任务,有点像这样:
#define ALL_TASKS ( \
1 + \ /* need one task in module A */
2 \ /* need two tasks in module B */
)
在编译操作系统期间,有一个检查:
#if (ALL_TASKS > N