C++笔记
文章平均质量分 57
THISISPAN
这个作者很懒,什么都没留下…
展开
-
c++中string用法汇总
之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。 首先,为了在我们的程序中使用string类型原创 2012-06-28 02:13:06 · 1897 阅读 · 1 评论 -
第五章 函数 --函数的默认参数问题
C++允许在声明函数时,指定参数的默认值。如果参数调用中未给出实参,那么参数的默认值将被传递给函数。程序实例:void print(double radius = 1){cout}int main(){print();print(4);return 0}print 函数声明了一个默认参数为1的默认参数,如原创 2012-04-17 14:35:50 · 571 阅读 · 0 评论 -
第五章 函数 ---内联函数
一。为什么要发明内联函数??使用函数可以使程序更易读,易于维护,但是调用函数,,会造成额外的开销(即---将参数和cpu寄存器压入栈中),以及在函数切换控制所花费的时间。C++提供了内敛函数,这样可以避免函数调用额外的开销,二。内联函数是怎样实现功能的??内敛函数是不会被调用的,实际上编译器将其代码复制到了每个调用点珊瑚。如:#i原创 2012-04-17 16:46:51 · 787 阅读 · 0 评论 -
第五章 函数 ---变量的作用域
一。局部变量没有默认值(任意的)全局变量的默认值为0;函数的参数就是局部变量,值能作用于整个函数。二。如果一个局部变量和一个全局变量同名,可以使用::运算符来访问全局变量。::称为一元作用域解析运算符。如:#include using namespace std;int i = 10;void main(){int i = 5;cout原创 2012-04-17 16:01:53 · 938 阅读 · 0 评论 -
第五章 函数 ---变量的作用域----静态局部变量
静态局部变量,是在函数内部声明的。当一个函数结束执行后,其所有局部变量都会被销毁。优势,我们需要保留局部变量的值,以便在下次调用时使用。C++提供了静态局部变量机制来达到此目的。在整个生命周期中,静态局部变量会一直保存在内存中。静态局部变量的声明使用关键字 static如:#include using namespace std;原创 2012-04-17 16:27:15 · 952 阅读 · 0 评论 -
随机生成指定的字符(定义一个简单但很实用的头文件)
定义一个头文件“getRandomCharacter”这是一个非常简单但很实用的头文件,是自己定义的,在今后的编程中,你可以利用这些函数#include using namespace std;char getRandomCharacter(char ch1,char ch2){ return static_cast(ch1+rand()%(ch2-ch1+1))原创 2012-04-17 15:49:51 · 1072 阅读 · 0 评论 -
2012.4.16笔记2--引用变量,按引用方式传递参数
一。C++提供了一种特殊的变量类型,称为引用变量。将函数形参声明为此种类型,形参变成实参的一个引用(而不是一个拷贝),一个引用变量实质上是另一个变量的别名,任何对引用变量的改变实质都会作用到原变量上。为声明一个引用变量,应在变量名前加一个“与&”符号程序实例:int count = 1;int &refCount = count;//声明引用变量时候,要在原创 2012-04-17 00:00:45 · 2142 阅读 · 0 评论 -
C++:输出日历的算法
功能:只要输入四位数的年份和该年的元旦是星期几,就可以输出全年的日历。思路提示:(1)一年有12个月,所以,输出年历的算法是:int month=1;while (month{计算第month月的天数MAX_DAY;输出天数是MAX_DAY的第month月的年历;month++;}(2)根据大月、小月、闰年、平年,计算year第month月的天数MAX_DA原创 2012-04-16 23:06:10 · 7228 阅读 · 0 评论 -
数组须知
1.数组的初始化语句中,属猪的声明和初始化必须在一条语句中完成。如:int array【】={1,5,69};如:下面代码是错误的int array[4];array[4]={1,5,6};//错误的2.如果一个数组被创建后,并未被初始化,其值是任意的,这一点和局部变量类似原创 2012-04-17 23:39:43 · 709 阅读 · 0 评论 -
第五章 函数 ---在不同程序中重用函数
使用函数的最大好处是----可以重用为了函数能在其他程序中可用,我们需要将函数放在一个头文件中,当其他程序需要使用这些函数的时候,直接可以include“xx.h”即可如,在工程中创建一个头文件MyLibbool isEven(int number){ return (number%2==0);}再创建一个.cpp文件,原创 2012-04-17 14:46:13 · 721 阅读 · 0 评论 -
break和continue的区别--应用实例
1。计算1--20的和,当结果大于100时候,停止计算#include using namespace std;void main(){ int sum = 0; int number = 0; while(number { sum+=number; number++; if(sum>=原创 2012-04-16 15:15:48 · 1399 阅读 · 1 评论 -
C++运算符优先级列表汇总
PrecedenceOperatorDescriptionExampleAssociativity1()[]->.::++--Grouping operatorArray accessMember access from a pointerMember access from an objectScoping operat原创 2012-04-13 17:33:08 · 1056 阅读 · 0 评论 -
2012.4.13笔记
1.计算程序的运行时间long startTime = time(0);//注意time(0)赋予的变量类型是long........long endTime = time(0);cout2.在进行两个数的交换函数中,引入的temp是个临时变量,函数输出不需要它,所以只需在函数内部声明即可,(不需要在外部声明)如: if (a {原创 2012-04-13 14:09:36 · 2019 阅读 · 0 评论 -
break,continue,goto,return语句
一.break 1.break语句形式:break; 2.break语句功能:A. switch语句中,break语句会终止其后语句的执行,退出switch语句。B. 使一个循环立即结束,也就是说在循环中遇到break语句时,循环立即终止,程序转到循环体后的第一个语句去继续执行。 3.注:A. break语句在循环中使用时,总是与if一起使原创 2012-04-16 15:08:28 · 856 阅读 · 0 评论 -
C++中类class与结构体struct的异同区别
原文链接:http://blog.csdn.net/yangbo_hbzjk/article/details/7448910结构体struct是C语言中用来封装类似于类的模块。 因为C++设计时定下的一项原则:必须完全兼容C语言,所以就允许C++下使用结构体类型了,并且在C++中的结构体类型支持成员函数。在此基础上扩展了面向对象思想,有了Class类,其实作用和原理都等同与结构体类型str转载 2012-04-16 19:08:16 · 1054 阅读 · 0 评论 -
c++中qsort()排序函数的使用qsort函数应用大全
在c++中qsort()排序函数的使用qsort函数应用大全七种qsort排序方法 一、对int类型数组排序 int num[100]; Sample: int cmp ( const void *a , const void *b ) { return *(int *)a - *(int *)b; } qsort(num,100,sizeof(n转载 2012-04-16 23:13:30 · 1839 阅读 · 0 评论 -
2012.4.16笔记--形式参数和实际参数
1.如果一个将两个数交换功能的函数void swap(int a ,int b),如果将形参改变,会有什么效果??实际上,不会有任何变化,因为形参和实参的名字是否一样没有多少意义,形参是函数中的变量,有自己的内存空间(栈)。当函数被调用时候,形参变量由系统分配新空间,被创建出来,当函数返回调用者时候,它就被销毁了。原创 2012-04-16 23:38:42 · 2158 阅读 · 0 评论 -
c++:堆和栈的区别
----------------------- Page 1-----------------------C++中堆和栈的区别,自由存储区、全局/静态存储区和常量存储区 文章来自一个论坛里的回帖,哪个论坛记不得了! 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态 存储区和常量存储区。 栈,就是那些由编译器在需要的时候原创 2012-04-17 00:03:42 · 1239 阅读 · 0 评论 -
C++:函数重载
在一个程序内部,两个函数有相同的名字,但参数列表表不同,。这种叫做函数重载 如int max(int n1,int n2);double max( double n1,double n2);double max(double n1,double n2,double n3);注:函数重载必须具有不同的参数列表,不能仅仅依赖于返回类型不同来重载函数为什么原创 2012-04-17 00:15:00 · 522 阅读 · 0 评论 -
初始化字符数组
C++允许一种更简单的方式来初始化字符数组char city[] = "dallas";注意:C++在字符数组的结尾是一个原创 2012-04-17 23:45:57 · 785 阅读 · 0 评论 -
C/C++常用头文件及函数汇总
C/C++头文件一览C#include //设定插入点#include //字符处理#include //定义错误码#include //浮点数处理#include //对应各种运算符的宏#include //定义各种数据类型最值的常量#include //定义本地化C函数#include原创 2012-04-17 16:58:27 · 76085 阅读 · 1 评论 -
char知识汇总
charchar是C/C++整型数据中比较古怪的一个,其它的如int/long/short等不指定signed/unsigned时都默认是signed,但char在标准中是unsigned,编译器可以实现为带符号的,也可以实现为不带符号的,有些编译器如pSOS的编译器,还可以通过编译开关来指定它是有符号数还是无符号数。 定义:计算机编程语言(c、c++、java、VFP原创 2012-06-26 13:30:37 · 1042 阅读 · 0 评论 -
显示日历
#include #include using namespace std;int main(){ cout int year; cin >> year; cout int firstDay; cin >> firstDay; int numberOfDaysInMonth = 0; // Disp原创 2012-06-27 00:38:45 · 1311 阅读 · 0 评论 -
C++:求10个数中最大的两个数
[C++] 求10个数中最大的两个数代码用了2次的if判断,第一次先求出最大的数。第二次则利用if语句剔除第一个最大的数,把剩余的数再次排序,于是最大的2个数就出来了。不过C++或者C#中有sort和arrays函数。也可以排序,而且代码也简介... 不过这样就失去了思考的意义了....?#include usingnamespacestd; int main()转载 2012-04-16 23:16:46 · 4416 阅读 · 0 评论 -
unsigned 知识
1.类型修饰符unsigned 修饰()类型是错误的A.char B. int C.long int D.float:D整型的每一种都有无符号(unsigned)和有符号(signed)两种类型,在默认情况下声明的整型变量都是有符号的类型(char有点特别),如果需声明无符号类型的话就需要在类型前加上unsigned。无符号版本和有符号版本的区别就是无符号类型能保存2倍于有符号类型的数原创 2012-06-25 18:47:47 · 2771 阅读 · 0 评论 -
类和对象知识点回顾
1.描述一下对象和类之间的关系?:类是对象的模板,类定义了对象具有什么样的数据和函数。对象是类的一个实例,可以创建一个类的多个对象。2.如何声明一个类,如何声明并创建一个对象?声明类:class Circle{}声明对象:Circle circle1;无实参函数声明一个对象Circ了 circle(5);带实参函数声明一个对象3.C++中原创 2012-06-21 00:10:06 · 1317 阅读 · 0 评论 -
C++基本数据类型和运算符知识点汇总
4种基本数据类型:整型 浮点型 char 无值型6种运算符 算数运算符:加+减-乘*除/模%,其中模运算%只适用于整数。自增运算符,自减运算符关系运算符:>,= ,逻辑运算符:!,&&,||----结果是true或者false位运算符:位运算符是专门用来进行二进制运算的,分为逻辑位运算符和移位运算符(>)赋值运算符: =,+=,-=,*=原创 2012-06-28 18:06:06 · 5017 阅读 · 0 评论 -
C/C++基础知识点全面汇总(计算机2级考试,程序员考试 基础考点)
一。基本数据类型知识点1.C/c++中的基本数据类型是?:整型,浮点型,字符型,无值型2.基本数据类型又是怎样细分的?:整型包括:有符号长整型(signed long int ),无符号长整型(unsigned long int ),有符号短整型,无符号短整型。3.类型修饰符signed,short,long用法:(1)类型修饰符signed和un原创 2012-06-25 23:50:26 · 5437 阅读 · 1 评论 -
位运算
程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算说穿了,就是直接对整数在内存中的二进制位进行操作。比如,and运算本来是一个逻辑运算符,但整数与整数之间也可以进行and运算。举个例子,6的二进制是110,11的二进制是1011,那么6 and 11的结果就是2,它是二进制对应位进行逻辑运算的结果(0表示False,1表示True,空位都当0处理)。 编辑本段各种位运算的使用原创 2012-06-25 18:44:13 · 1501 阅读 · 0 评论 -
预处理器理解
预处理器 预处理器(preprocessor) 预处理器是在真正的编译开始之前由编译器调用的独立程序。预处理器可以删除注释、包含其他文件以及执行宏(宏macro是一段重复文字的简短描写)替代。预处理器可由语言(如C)要求或以后作为提供额外功能(诸如为FORTRAN提供Ratfor预处理器)的附加软件。原创 2012-06-21 17:15:56 · 995 阅读 · 0 评论 -
请问头文件(.h)中可以进行函数定义吗?
请问头文件(.h)中可以进行函数定义吗?答案:可以是可以,但是有个条件,此头文件只能被一个源文件包含。!!!!!!!!!!!!!所以不推荐使用这种方法,会出现如下错误 fatal error C1083: Cannot open include file: '541.h': No such file or directory原创 2012-04-17 16:53:41 · 4819 阅读 · 0 评论 -
c++模板类/模板函数的声明与定义应该放在头文件里
c++模板类/模板函数的声明与定义应该放在头文件里,不要分开来写类中函数的声明与定义(比如在.H文件里声明某个成员函数,在.CPP文件里定义该成员函数),这样会导致连接错误。所应该将模板类/模板函数的定义与声明写在一个.h文件里原创 2012-04-17 22:38:41 · 1689 阅读 · 0 评论 -
c++排序函数详解
c++排序函数详解原文地址:http://www.cnblogs.com/A-Song/archive/2012/02/02/2336337.html首先看sort函数见下表:函数名功能描述sort对给定区间所有元素进行排序stable_sort对给定区间所有元素进行稳定排序 partial_sort对转载 2012-04-16 23:10:48 · 896 阅读 · 0 评论 -
华为--软件工程师面试题(1)
华为1.static有什么用途?(请至少说明两种) 1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。 2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。 3) 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块原创 2012-04-19 12:16:44 · 8640 阅读 · 0 评论 -
c++引用与指针的区别(着重理解)
★ 相同点: 1. 都是地址的概念; 指针指向一块内存,它的内容是所指内存的地址;引用是某块内存的别名。 ★ 区别: 1. 指针是一个实体,而引用仅是个别名; 2. 引用使用时无需解引用(*),指针需要解引用; 3. 引用只能在定义时被初始化一次,之后不可变;指针可变; 引用“从一而终” ^_^ 4. 引用没有 con原创 2012-04-13 00:54:00 · 80943 阅读 · 20 评论 -
C++语言可以运行在任何机器上么?
最近在VS2005下用C++写了一个Console程序,在一台未安装VS2005上运行,显示: “系统无法执行指定的程序” 是不是一定要在这台机器上安装VS2005才可以运行? 请大家指教,非常感谢!回答:应该不会,如果错误提示缺少 ***.dll那就找到这个东东,然后跟可执行程序放一个文件夹下就可以运行了原创 2012-06-18 13:58:19 · 1202 阅读 · 0 评论 -
将类的声明和实现分离
将类的声明和实现分离的方法:1.在Header Files头文件夹中,建立一个头文件(名字任意),头文件里面,可声明多个类。2.在Source Files源文件文件夹中,在源代码的文件夹中,实现类的实现,方法为,建立一个源文件,源文件名与头文件的名字相同(not 与类名相同)。3.在源代码中,引用相应头文件(not 类名),即可将头文件里的类在源码中进行使用。正确步骤如下:原创 2012-06-19 23:17:13 · 1396 阅读 · 0 评论 -
C++计算最大公约数(辗转相除法)
典型例题:一.辗转相除法例1 。求两个正数8251和6105的最大公因数。(分析:辗转相除→余数为零→得到结果)解:8251=6105×1+2146显然8251与6105的最大公因数也必是2146的因数,同样6105与2146的公因数也必是8251的因数,所以8251与6105的最大公因数也是6105与2146的最大公因数。6105=2146×2+18132146=18原创 2012-04-13 15:54:41 · 31872 阅读 · 0 评论 -
局部变量的使用
1.在两个数的交换中,2.在循环的循环变量中,3.循环的输入中,声明输入的量为局部变量原创 2012-04-13 15:29:52 · 677 阅读 · 0 评论 -
如何用c++产生1-10十个不同的随机数(代码很经典)
你要不同的10个数。你可以设个数组存储已经产生的数。比如已经产生了第一个数5,你用rand()生成了又一个5时,比较一下以产生的数发现是5,就跳过,看下一个。总能产生10个不同的随机数。算法就是,每生成一个数就与原来生成的数比较,如果有相等的就就重新生成一个数,这样就能保证10个数都不相等了。下面这个程序生成数的范围是0到100:#include #include转载 2012-04-09 19:12:01 · 22862 阅读 · 3 评论