温州市巨峰五金制品厂:在C语言中,函数中的静态变量是在main函数启动之前就初始化完了吗?

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/28 14:08:20
在C语言中,函数中的静态变量是在main函数启动之前就初始化完了吗?如何检测它是在main函数之前或之后初始化呢?假如在某个函数中创建了一个类的某个对象,该类的对象初始化情况又是怎样的呢?又是怎样检测呢?
不管是全局的还是局部的静态变量,静态类的对象都是在编译的时候初始化完了吗?能不能检测到呢?

静态变量是在编译时就初始化的,理论上你检测不到的……
对象的初始化和你在类中的的定义有关,如果类中没有定义,则会进行一个默认的初始化,将所有值初始化为0(这么说其实不准确的,不过现简单的这么说吧)。

类......对象......兄弟,你说的是C吗?C是面向过程的啊,C/C++要分清啊

其实在main()的“()”中就有变量,他们就是全局的哦,不过就是内部的,你没有办法检测,但是如果你在vc++环境中可以跟踪检测的到的,你可以试试哦

不需要检测,它在理论上就是先初始化的。也许不是在 main 之前初始化(谁也不知道它内部是怎么工作的),但是在你用到这个变量之前,它肯定会先被初始化。

......对象......兄弟,你说的是C吗?C是面向过程的啊,C/C++要分清啊