![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 79
思翊
Hello , world.
展开
-
C语言程序的内存分布
在任何程序设计环境及语言中,内存管理都十分重要。在目前的计算机系统或嵌入式系统中,内存资源仍然是有限的。因此在程序设计中,有效地管理内存资源是程序员首先考虑的问题。1.C程序结构下面列出C语言可执行程序的基本情况(Linux 2.6环境/GCC4.0)。[root@localhost Ctest]# ls test-l //test为一个可执行程序-rwxr-xr-x 1原创 2015-03-07 20:43:00 · 627 阅读 · 0 评论 -
C语言 - 结构体所占字节数
在用sizeof运算符求算某结构体所占空间时,并不是简单地将结构体中所有元素各自占的空间相加,这里涉及到内存字节对齐的问题。从理论上讲,对于任何变量的访问都可以从任何地址开始访问,但是事实上不是如此,实际上访问特定类型的变量只能在特定的地址访问,这就需要各个变量在空间上按一定的规则排列,而不是简单地顺序排列,这就是内存对齐。 内存对齐的原因: 1)某些平台只能在特定的地转载 2015-03-23 13:58:46 · 17054 阅读 · 3 评论 -
C++中拷贝(复制)构造函数和赋值运算符重载函数
C++中拷贝构造函数和赋值运算符重载函数何时调用?先看下面的程序:#include using namespace std;class D{public: D() { cout<<"调用D的无参构造函数"<<endl; } D(const D &d) { cout<<"调用D的拷贝构造函数"<<endl; } D & operator=(const D &d原创 2015-06-26 15:42:42 · 475 阅读 · 0 评论 -
C++构造函数调用顺序笔记
当派生类继承了基类,并且类中有基类对象作为成员变量时,构造函数的调用顺序是怎样的呢?看下面的程序:派生类继承了两个基类A和B,主函数里定义了一个派生类对象:#include using namespace std;class A{public: int x , y; char *p;public: A(int ix , int iy) { x = ix ;原创 2015-05-19 14:08:28 · 986 阅读 · 0 评论 -
C程序内存相关知识点
c 内存分配1、程序代码区:存放函数体的二进制代码。 2、全局区数据区:全局数据区划分为三个区域。 全局变量和静态变量的存储是放在一块的。初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。常量数据存放在另一个区域里。这些数据在程序结束后由系统释放。我们所说的BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量原创 2015-03-07 21:22:42 · 446 阅读 · 0 评论 -
new/delete 和malloc/free 的区别和联系
一、基本概念 malloc/free:1、函数原型及说明: void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。 void free(void *FirstByte): 该函数是将之前用malloc分配的空间还给程序或者是操作系统,也就是释放了这块原创 2014-10-22 11:36:35 · 677 阅读 · 0 评论 -
关于C++中string类的查找函数的说明
string类的查找函数:int find(char c, int pos = 0) const;//从pos开始查找字符c在当前字符串的位置int find(const char *s, int pos = 0) const;//从pos开始查找字符串s在当前串中的位置int find(const char *s, int pos, int n) const;//从pos开始查找原创 2014-12-17 08:39:29 · 723 阅读 · 0 评论 -
C++ string类函数详解
1、string类的构造函数:string(const char *s); //用c字符串s初始化,string s1(“hello world);string(int n,char c); //用连续n个字符c初始化,string s2(10,’a’);此外,string类还支持默认构造函数和复制构造函数,如strings1(默认初始化为空);strings2="hello";都原创 2014-11-15 14:48:01 · 634 阅读 · 0 评论 -
C/C++中的 static 变量和 static 函数
一、C语言中的静态变量 1、 全局静态变量在全局变量之前加上关键字static,全局变量就被定义成为一个全局静态变量。 1)内存中的位置:静态存储区(静态存储区在整个程序运行期间都存在) 2)初始化:未经初始化的全局静态变量会被程序自动初始化为0(自动对象的值是任意的,除非他被显示初始化) 3)作用域:全局静态变量在声明他的文件之外是不可见的。准确地讲从定义之处开原创 2014-11-12 11:08:37 · 794 阅读 · 1 评论 -
如何学好C语言
我相信,这可能是很多朋友的问题,我以前也有这样的感觉,编程编到一定的时候,发现能力到了瓶颈,既不深,也不扎实,半吊子。比如:你长期地使用Java和.NET ,这些有虚拟机的语言对于开发便利是便利,但是对于程序员来说可能并不太好,原因有两个:虚拟机屏蔽了操作系统的系统调用,以及很多底层机制。大量的封装好的类库也屏蔽了很多实现细节。一段时间后,你会发现你知其然,不知所以然。。我以前在C转载 2014-11-30 21:32:19 · 543 阅读 · 0 评论