
C/C++
文章平均质量分 78
tht2009
这个作者很懒,什么都没留下…
展开
-
C/C++要点全掌握(六)——变长参数
上接C/C++要点全掌握(五)——mutable、volatile 14、变长参数 设计一个参数个数可变、参数类型不定的函数是可能的,最常见的例子是printf函数、scanf函数和高级语言的Format函数。在C/C++中,为了通知编译器函数的参数个数和类型可变(即是不定的、未知的),就必须以三个点结束该函数的声明。// printf函数的声明原创 2011-11-28 15:25:10 · 11466 阅读 · 0 评论 -
C/C++要点全掌握(一)——基础概念
最近参加了几个公司到学校的招聘会,笔试时大多要求使用C/C++语言,而且有些笔试考到了语言的细节部分。说来汗颜,C/C++只在大一学习时使用了一年,之后一直在学习高级语言的组件开发,到现在C/C++语言的有些细节,部分已经忘记。在此将C/C++的基础要点重拾一遍,以便往后忘记之时查阅。 1、局部变量存储于堆栈上,堆栈是一个动态可变的存储区,所以局部变量是在声明它们的块入口处创建,出口处销毁原创 2011-10-09 15:52:49 · 2418 阅读 · 0 评论 -
C/C++要点全掌握(三)——const
上接:C/C++要点全掌握(二)。 11、const辨析 const 是一个“左结合”的修饰符,一般与左侧类型标识符结合声明只读变量(常量);指针修饰符(*)是一个“右结合”修饰符,一般与右侧变量名结合声明指针(在定义指针时可将”*p”看作一个整体,前面类型即为*p内容的数据类型),其优先级高于const与类型修饰符。如果const与类型修饰符(如int)二者直接相原创 2011-10-13 15:11:15 · 2475 阅读 · 0 评论 -
C/C++要点全掌握(五)——mutable、volatile
上接C/C++要点全掌握(四)。 13、mutable和volatile 很少遇到这两个关键字,学嵌入式估计知道后者,深入研究C++的估计知道前者。 (1)mutable 在C++中,mutable是为了突破const的限制而设置的。被mutable修饰的变量,将永远处于可变的状态,即使在一个const函数中,甚至结构体变量或者类对象为原创 2011-10-31 11:02:46 · 20927 阅读 · 4 评论 -
C/C++要点全掌握(二)——堆栈、指针
上接C/C++要点全掌握(一) 9、堆栈 栈(stack):为程序保存的一块内存区域,用来保存状态数据,其访问顺序是后进先出(LIFO)。例如:过程或函数的地址,参数,有时候还包括局部变量。 堆(heap):为程序保存的一块内存区域,用来保存那些在运行时才知道其存在与大小的数据;程序能够从堆中分配内存给这些元素;在用完之后,应该释放掉这些内存。堆中所原创 2011-10-10 10:21:24 · 5675 阅读 · 1 评论 -
N个正整数联接成最小整数
题目描述:设有n个正整数,将它们联接成一排,组成一个最小的多位整数。例如:n=2时,2个整数32,321连接成的最小整数为:32132,n=4时,4个整数55,31,312, 33 联接成的最小整数为:312313355分析:其实这题就是将这些整数以字符串方式排序,整数的第一位越小,其越靠前;若第一位相同则同理比较第二位。依次类推,直至能确定其顺序。当其中一个数是另一个原创 2011-10-15 21:24:49 · 2386 阅读 · 1 评论 -
C/C++要点全掌握(四)——宏
上接C/C++要点全掌握(三)。 12、宏定义三要点 以下三点一般都没被重视,至少我之前就不知道,但这三点是非常重要的,只有满足这三个要求的宏才是无误的,否则有可能出现与宏的原义相左的情况。这里将其单独作为一节,凸显其重要性,在以后的编程中要严格按照这个形式来定义宏。 (1)表达式中参数变元都用括号括起来;(2)将表达式根据运算优先将各个子表达原创 2011-10-29 22:17:50 · 2566 阅读 · 0 评论 -
内存对齐分配策略(含位域模式)
转自:http://www.cnblogs.com/ToDoToTry/archive/2011/09/05/2167694.html1:内存对齐定义: 现在使用的计算机中内存空间都是按照字节划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但是实际上计算机系统对于基本数据类型在内存中的存放位置都有限制,要求这些数据存储首地址是某个数K的倍数,这样各种转载 2016-08-04 11:58:41 · 2096 阅读 · 0 评论