C/C++
文章平均质量分 73
江风弄舟
高通、MTK智能系统方案开发,IoT设备驱动开发,积累!交流!锐意进取!
展开
-
C++学习笔记之"类和对象I"
成员函数的实现(函数定义)都写在类体中,与一般的函数定义一样。class TDate{public:void SetDate(int y,int m,int d){year=y;month=m;day=d;}void Print(){cout}private:int year,month,day;}成员函数在类体中声明,实现在类体外且在声明之后 例:class TDate{public:void SetDate(int y,int m,int d);void Print();private:int year原创 2010-07-21 18:43:00 · 390 阅读 · 0 评论 -
宏定义
1,防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H //头文件内容 #endif 2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。typedef unsigned转载 2011-09-02 15:58:06 · 568 阅读 · 0 评论 -
C学习摘要
在 C 语言中,凡不加返回值类型限定的函数,就会被编译器作为返回整型值处理。在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,以减少 CPU 跨切循环层的次数。return 语句不可返回指向“栈内存”的“指针”,因为该内存在函数体结束时被自动销毁。转载 2011-03-25 16:22:00 · 475 阅读 · 0 评论 -
C中的static、extern、#、##
static 作用i:修饰变量。变量又分为局部和全局变量,但它们都存在内存的静态区。 静态全局变量,作用域仅限于变量被定义的文件中,其他文件即使用extern声明也没法使用他。准确地说作用域是从定义之处开始,到文件结尾处结束,在定义之处前面的那些代码行也不能使用它。想要使用就得在前面再加 extern ***。恶心吧?要想不恶心,很简单,直接在文件顶端定义不就得了。 静态局部变量,在函数体里面定义的,就只能在这个函数里用了,同一个文档中的其他函数也用不了。由于被static修转载 2011-04-29 16:49:00 · 407 阅读 · 0 评论 -
指针参数如何传递内存
<br /> 如果函数的参数是一个指针,不要指望用该指针去申请动态内存。下面例子中,Test 函数的语句GetMemory(str, 200)并没有使str获得期望的内存,str 依旧是 NULL。<br />void GetMemory(char *p, int num) <br />{ <br /> p = (char *)malloc(sizeof(char) * num); <br />} <br />void Test(void) <br />{ <br /> char转载 2011-03-18 15:01:00 · 553 阅读 · 0 评论 -
数组和指针
C/C++ 程序中,指针和数组在不少地方可以相互替换着用。任何能由数组下标完成的操作也都可用指针来实现,但程序中使用指针可使代码更紧凑、更灵活。 数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组的内容可以改变。 指针可以随时指向任意类型的内存块,它的特征是“可变”,所以我们常用指针来操作动态内存。指针远比数组灵活,但也更危险。 1.指向数组元素的指针 int a[10],转载 2011-03-18 11:08:00 · 623 阅读 · 0 评论 -
彻底搞定C指针-函数名与函数指针
函数名与函数指针一 通常的函数调用 一个通常的函数调用的例子://自行包含头文件void MyFun(int x); //此处的申明也可写成:void MyFun( int );int main(int argc, char* argv[]){ MyFun(10); //这里是调用MyFun(10);函数 return 0;}void MyFun(int x) //这里定义一个MyFun函数{ printf(“%d/n”,x);} 这个MyFun函数是一个转载 2011-03-15 22:31:00 · 328 阅读 · 0 评论 -
C/C++内存管理
内存分配方式有三种:从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量很有限。从堆上分配,亦成为动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期由我们决定,使用非常灵活,但问转载 2011-03-11 15:13:00 · 630 阅读 · 0 评论 -
SPRD-MMI学习笔记
开关型feature options列表型feature optionsmake目录存放和模块对应的编译脚本,属于模块编译脚本Makefile.rules、Makefile.modules、Makefile以及项目的相关make脚本,属于项目编译脚本makefile中变量和转义宏的区别:变量注释的#少于3个,转义宏注释的#至少有3个applicationwindowco原创 2012-03-01 09:02:30 · 5316 阅读 · 0 评论