大家好,今天小编关注到一个比较有意思的话题,就是关于c语言静态区的问题,于是小编就整理了4个相关介绍c语言静态区的解答,让我们一起看看吧。
c语言静态和动态的分别是什么?
静态语言(强类型语言)是编译时变量的数据类型就可以确定的语言,大多数静态语言要求在使用变量之前必须生命数据类型。比如java、C、c++、c#等。强类型语言是必须强制确定数据类型的语言,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这种数据类型。
动态语言(弱类型语言)是运行时才确定数据类型的语言,变量在使用之前无需申明类型,通常变量的值是被赋值的那个值的类型。比如Php、Asp、JavaScript、Python、Perl等等。弱类型语言是数据类型可以被忽略的语言。它与强类型语言相反,一个变量可以赋不同数据类型的值。
c语言静态数据成员什么意思?
静态成员的提出是为了解决数据共享的问题。实现共享有许多方法,如:设置全局性的变量或对象是一种方法。但是,全局变量或对象是有局限性的。
1.静态数据成员
(1)作用1:节省内存
使用静态数据成员可以节省内存,因为它是所有对象所公有的,因此,对多个对象来说,静态数据成员只存储一处,供所有对象共用(比如双向链表的头节点就可以用static)。静态数据成员的值对每个对象都是一样,但它的值是可以更新的。只要对静态数据成员的值更新一次,保证所有对象存取更新后的相同的值,这样可以提高时间效率。
(2)隐藏性和安全性
C++为什么是静态类型的?
所谓的静态和动态是从执行的角度去说的动态语言,编译后的文件是中间代码,不是机器指令,执行的时候需要把中间代码再翻译成机器指令,一般这些语言都会带有虚拟机,如j***a,C#,php,perl等静态语言,变异后的文件直接是机器指令,不需要虚拟机就可以直接运行,如c语言,c++等都是这样的。