C/C++
罗马骑士
这个作者很懒,什么都没留下…
展开
-
C中itoa函数实现
char *itoa(int num, char *str, int radix){ /*建立索引*/ char index[]="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; int i = 0, j , k; unsigned unum; if (radix == 10 && num {原创 2011-10-21 21:41:55 · 1150 阅读 · 0 评论 -
C++中的inline关键字
一、在C&C++中 一、inline 关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义。 表达式形式的宏定义一例: #define ExpressionName(Var1,Var2) ((Var1)+(Var2))*((Var1)-(Var2))为什么要取代这种形式呢,且听我道来: 1. 首先谈一下在C中使用转载 2011-07-27 13:33:28 · 2346 阅读 · 1 评论 -
C++中的static关键字
C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。一、面向过程设计中的static1、静态全局变量 在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。 静态全局变量有以下特点: 该变量在全局数据区分配内转载 2011-07-27 20:30:20 · 860 阅读 · 0 评论 -
windows下安装配置gcc编译器
在Windows下使用gcc编译器:1.首先介绍下MinGWMinGW是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称。 实际上 MinGW 并不是一个 单纯的C/C++ 编译器,而是一套 GNU 工具集合。除开 GCC 以外,MinGW 还包含有一些其他的 GNU 程序开发工具 (比如 gawk b转载 2013-07-01 23:46:20 · 1485 阅读 · 0 评论 -
声明函数指针并实现回调
程序员常常需要实现回调。本文将讨论函数指针的基本原则并说明如何使用函数指针实现回调。注意这里针对的是普通的函数,不包括完全依赖于不同语法和语义规则的类成员函数(类成员指针将在另文中讨论)。声明函数指针 回调函数是一个程序员不能显式调用的函数;通过将回调函数的地址传给调用者从而实现调用。要实现回调,必须首先定义函数指针。尽管定义的语法有点不可思议,但如果你熟悉函数声明的一般方法转载 2011-12-21 17:23:22 · 898 阅读 · 0 评论 -
C语言之内存对齐
本文改编自百度文库“深入C语言只内存对齐”一问,文章中详细阐述了采用内存对齐的原因,深入透彻分析了内存对齐的方式。对于文中出现的计算,本人都通过了手算与编程进行了验证。 在C程序设计中我们经常需要用到一种数据类型的长度(占内存的字节数),例如:int *p = NULL;p = (int *)malloc(10*sizeof(int));/*用sizeof(int)来的到int原创 2012-03-05 11:09:02 · 1035 阅读 · 0 评论 -
C++内存分区
在C++中,内存分成5个区:堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。 堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。原创 2011-04-03 17:03:00 · 1079 阅读 · 0 评论 -
C++中的虚函数与函数重载
虚函数参考:http://www.vckbase.com/document/viewdoc/?id=950 http://www.cnblogs.com/abc19830814/archive/2007/12/03/980977.html函数重载参考:http://wenku.baidu.com/view/23b9b728647d27284b735130.html留备份而已。。。原创 2011-08-02 15:18:22 · 775 阅读 · 0 评论 -
三十分钟掌握STL
这是本小人书。原名是《using stl》,不知道是谁写的。不过我倒觉得很有趣,所以化了两个晚上把它翻译出来。我没有对翻译出来的内容校验过。如果你没法在三十分钟内觉得有所收获,那么赶紧扔了它。文中我省略了很多东西。心疼那,浪费我两个晚上。译者:karycontact:karymay@163.netSTL概述STL的一个重要特点是数据结构和算法的分离。尽管这是个简单的概念,但这种分离转载 2012-03-09 17:53:56 · 754 阅读 · 0 评论 -
C常用的I/O函数总结
1 读写单个字符读单个字符int getc(FILE *fp);int fgetc(FILE *fp);int getchar(void);其中getc函数和fgetc函数从文件中读取一个字符,getchar(void)等同于getc(stdin)表示从标准输入中读取一个字符写单个字符int putc(int c, FILE *fp);int fputc(int c原创 2011-10-07 13:26:40 · 883 阅读 · 0 评论 -
c++之菱形继承
前天和大学室友吃烧烤,其中谈到菱形继承的问题,突然发现脑中对这个几乎空白,所以晚上回来就上网搜了搜,言归正传,说到菱形继承,就要说到虚继承的概念,对于虚继承,就是为了解决从不同途径继承来的同名的数据成员在内存中有不同的拷贝造成数据不一致问题,将共同基类设置为虚基类。这时从不同的路径继承过来的同名数据成员在内存中就只有一个拷贝,同一个函数名也只有一个映射。这样不仅就解决了二义性问题,也节省了内存,避转载 2013-09-12 20:58:47 · 962 阅读 · 0 评论