C/Cplusplus
文章平均质量分 71
IT女程序员Lyra
这个作者很懒,什么都没留下…
展开
-
【转】C语言中的static变量 和 C++…
C语言中static的变量:1).static局部变量 a.静态局部变量在函数内定义,生存期为整个程序运行期间,但作用域与自动变量相同,只能在定义该变量的函数内使用。退出该函数后, 尽管该变量还继续存在,但不能使用它。 b.对基本类型的静态局部变量若在说明时未赋以初值,则系统自动赋予0值。而对自动变量不赋初值,则其值是不定的。2).static全局变量 全原创 2014-11-27 18:05:13 · 387 阅读 · 0 评论 -
c程序的内存分布
一、c程序的内存分布既然static是用来修饰变量和函数的,而变量和函数又是组成c程序必不可少的,C程序的内存分布图如下。 C程序由下面5部分组成: 1)正文段——CPU执行的机器指令部分;一个程序只有一个副本;只读,防止程序由于意外事故而修改自身指令; 2)初始化数据段(数据段)——在程序中所有赋了初值的全局变量,存放在这里。 3)非初始化数据段(bss段)—原创 2014-11-27 18:05:16 · 322 阅读 · 0 评论 -
为什么在C++使用pthread_create()…
今天在进行多线程编程的时候遇到了一个编译问题:error: argument of type ‘void(PIAMW::Communicator::)()’ does not match ‘void* (*)(void*)’后来发现将线程处理函数声明为static类型,问题得解。 其实这个原因很简单,当把线程函数封装在类中,this指针会作为默认的参数被传进函数中,从而和线程函数原创 2014-11-27 18:04:46 · 778 阅读 · 0 评论 -
C++类的静态成员变量使用须知
今天,在试着使用gtest的 TestSuite事件时发现,类的静态成员变量在main入口之前必须要初始化,继而查了查类静态成员的使用问题。 首先来看看,为何gtest的 TestSuite事件 中会涉及到类的静态成员变量的使用呢? gtest的 TestSuite事件 必须要实现两个静态方法,SetUpTestCase()方法在第一个TestCase之前执行,Te原创 2014-11-27 18:04:48 · 696 阅读 · 2 评论 -
jsoncpp使用
1.下载jsoncpp: http://jsoncpp.sourceforge.net/这个网页上不仅有下载链接,还有使用范例下载页面为:http://sourceforge.net/projects/jsoncpp/files/我下载的是:jsoncpp-src-0.5.0.tar.gz2.编译:解压缩jsoncpp-src-0.5.0.tar.gz,按照http://jsoncp原创 2014-11-27 18:06:34 · 488 阅读 · 0 评论 -
static变量特点介绍
二、static修饰的变量 1. 全局静态变量 在全局变量之前加上关键字static,全局变量就被定义成为一个全局静态变量。 1)内存中的位置:静态存储区(静态存储区在整个程序运行期间都存在) 2)初始化:未经初始化的全局静态变量会被程序自动初始化为0(自动对象的值是 任意的,除非他被显示初始化) 3)作用域:全局静态变量在声明原创 2014-11-27 18:05:19 · 4172 阅读 · 0 评论