如我所知,在C中,我们可以使用函数指针,这是在运行时(1)调用的。
根据维基百科的定义:
动态编程语言是计算机科学中广泛使用的术语,用来描述一类高级编程语言,在运行时执行其他语言在编译过程中可能执行的许多常见行为。
所以我的问题是,为什么C不是提供(1)中的特性的动态语言?
发布于 2010-11-05 21:52:32
因为函数指针中的函数仍然在编译时被编译。
您不能在运行时添加新函数或修改“动态”函数。
发布于 2010-11-05 21:52:29
多态行为不是动态语言制造的。一般说来,有人提到“动态语言”是指它的类型系统。PHP是一种动态语言,因为任何变量都可以包含任何类型的数据,并且数据类型之间的转换是隐式处理的。在运行时确定要转换的内容和时间。
此外,我认为C语言无法实现您引用的定义中的“高级编程语言类”部分。
发布于 2010-11-05 21:53:45
只能为编译时存在的函数分配指针.您不能在C程序中间编译新函数并为该函数分配指针。
https://stackoverflow.com/questions/4110383
复制相似问题