
c++
文章平均质量分 55
T_W_S
这个作者很懒,什么都没留下…
展开
-
C++中char和int型变量的一点心得
字符字面值一般是用一对单引号来表示。char类型一般就是用字符字面值来初始化、赋值。由于char类型的是单字节长度,当给char类型的变量用字符 字面值赋值时,当单引号里面的内容超过一个字节时,系统会自动截取一个字节的内容给char变量,忽略其他的字节内容。比如char a='1234';c++会认为单引号里的每一个数值都看做一个字符字面值,也就是说1 2 3 4各占一个字节,'1234'也就转载 2013-01-18 09:45:07 · 852 阅读 · 0 评论 -
c++控制台输入
当在控制台输入数据时,所有的数据都是输入到缓冲区的,当从其中提取数据时,也是从缓冲区提取的!其有一个指向缓冲区的指针,就是通过此指针对数据提取的。例如cin>>a;其实就是像缓冲区输入一系列字符,然后cin>>a通过对>>的重载实现从缓冲区取出数据并进行相应的转换后赋值给a;当在cin>>a后继续输入cin>>b时,仍然是像缓冲区输入一组数据,然后将相关数据赋值给b;当cin>>b后c原创 2013-07-05 21:57:17 · 21250 阅读 · 0 评论 -
代码片段
1,计算程序执行时间:#includeclock_t start,end;start=clock();//doing codeend=clock();cout2.求0到99的随机整数(包含0和99)rand()函数随机产生一个0到MAX的整数。所以要满足上面功能只需要:#includesrand((int)time(NULL));int a=ra原创 2013-07-18 19:05:47 · 901 阅读 · 0 评论 -
c++类的创建和继承
1.类的定义格式:#ifndef _AAAAAA_#define _AAAAAA_//引入类中需要用到的头文件,定义宏等class A{private:public:protected:};#endif2类的构造函数的申明/定义的方法1. public:下 A(int aa,int bb):a(aa):b(bb){}2 public:下A原创 2013-05-30 17:11:19 · 2832 阅读 · 0 评论 -
GDI文字绘制和windows下opengl文字绘制小结
GDI绘制文字,要设置文字的属性,主要就是通过设置DC中的font对象来实现的。font对象的创建可以由createfont()、createfontIndirect()来实现。HFONT CreateFont( int nHeight, // height of font int nWidth, // average原创 2013-11-27 16:44:47 · 5150 阅读 · 3 评论 -
Opengl和windows的逻辑坐标到设备坐标转换的理解
1.绘图操作涉及到窗口,视口,屏幕几个概念(窗口是逻辑坐标,视口是设备坐标,是屏幕的一部分)。在opengl和windows中,窗口,和视口的定义是有所区别的。opengl中,窗口是在世界坐标系中定义的一个矩形框,也就是投影面。视口是在显示窗口中定义的一个矩形框,窗口中的物体完全投影到视口中。而视口之外的窗口区域将不进行绘图操作。窗口与视口的转换公式如下:xViewport =原创 2013-11-12 12:43:37 · 3225 阅读 · 0 评论 -
C/C++内存分配机制
http://hi.baidu.com/lcplj123/item/e984cd0f921e39c12e4c6baa1.C语言中的内存机制在C语言中,内存主要分为如下5个存储区:(1)栈(Stack):位于函数内的局部变量(包括函数实参),由编译器负责分配释放,函数结束,栈变量失效。(2)堆(Heap):由程序员用malloc/calloc/realloc分配,free释放转载 2013-05-13 09:21:58 · 3704 阅读 · 1 评论 -
vs2010实现编译连接运行
程序在运行之前要经过编译连接运行三个步骤,vs2010环境下当点击ctrl+F5时,此环境做了以下工作。编译预处理:vs将cpp文件中的注释忽略,将宏转化等,同时包含头文件等。在包含头文件时,vs根据路径寻找相关的头文件(代表默认路径是vs下的include文件夹,"a.h"代表默认路径是此程序文件夹 ). 当头文件不在对应路径时,会出现找不到头文件的编译错误。编译:将包含了头文件的被原创 2013-08-28 11:00:24 · 4586 阅读 · 0 评论 -
回调函数 与 回调机制
1. 什么是回调函数 回调函数(callback Function),顾名思义,用于回调的函数。 回调函数只是一个功能片段,由用户按照回调函数调用约定来实现的一个函数。回调函数是一个工作流的一部分,由工作流来决定函数的调用(回调)时机。回调函数包含下面几个特性:属于工作流的一个部分;必须按照工作流指定的调用约定来申明(定义);他的调用时机由工作流决定,回调函数的实现者不能直接转载 2013-08-10 11:27:37 · 1871 阅读 · 0 评论 -
广义表
1.广义表的定义:表的元素不是单纯的原子元素,可以又是一个表。2.广义表的存储:广义表可以方便的使用带头结点的链表表示。除头结点外,链表中的每一个节点对应广义表的一个元素(原子或子表)。例如节点数据可以为(type,data,link),type确定了data的类型,data可能是原子数据,也可能是一个指向子表的指针。link指向表的下一个元素。原创 2013-08-09 17:11:04 · 856 阅读 · 0 评论 -
error 类型
error C2872: 'cout' : ambiguous symbol:模糊不清的标记 :可能cout被定义了多次error LNK2019: 没有包含头文件,或者没有定义函数,或者没有导入库。还有种,当创建一个项目A后,同时生成解决方案后,在此项目上又删除了.H和.CPP文件,重新创建其他的.H和.CPP文件后,再运行也可能出错,因为之前生成A后会在Debug下产生某些文原创 2013-05-30 10:22:28 · 2515 阅读 · 0 评论 -
C++格式化输入输出
1.c++输出到小数点后n位首先要包含iomanip头文件.double a=3.141592, b=2213242.329843;cout.setf(ios::showpoint);//设置为始终输出小数点后的数字,就是说 a = 3,它也输出 3.00000这样cout.precision(6);cout.setf(ios::fixed);//设原创 2013-07-13 21:13:10 · 782 阅读 · 0 评论 -
c/c++的发展与不同
c、c++的发展历史:1973年,美国贝尔实验室的D.M.RITCHIE改进了b语言,形成了c语言,c语言是面向过程的,只有函数库。在20世纪80年代初期,贝尔实验室的Bjarne Stroustrup发明并实现了c++(c with classses)。刚开始c++只是作为c的加强版,不断添加新特性,从刚开始的添加类,到添加虚函数,运算符重载,多重继承,模板,异常,RTTI,命名空间原创 2013-05-30 11:24:41 · 931 阅读 · 0 评论 -
stdin stdout stderr的定义
//C:\Program Files\Microsoft Visual Studio\VC98\CRT\SRC\STDIO.H...struct _iobuf { char *_ptr; int _cnt; char *_base; int _flag; int _file; int转载 2013-05-14 15:36:32 · 2220 阅读 · 0 评论 -
迷宫问题递归求解
#include #define M 10//数组大小#define N 10int endi=7;//结束点int endj=3;int v[M][N]={0};//状态位,对应a[i][j]是否被访问过bool search(int i,int j, int a[M][N]){ if(v[i][j]==1)return false;//判断a[i][j]是否被访问,访问原创 2013-05-23 19:47:08 · 2484 阅读 · 0 评论 -
stack的数组实现
//stack的数组实现(方法类似于类的定义)//1:实现栈的数据定义//2:实现操作方法的定义push pop empty full top(并不需要,因为stack[top]就是top)//ps:栈的使用过程是先创建栈对象,然后再对此对象进行相关操作。栈定义中的top这里指定为栈顶的数组下标,top指向的是存在的数据。//ps:在采用数组实现栈时,数组0下标对应原创 2013-05-23 22:43:04 · 2838 阅读 · 0 评论 -
内存代表的实际含义
计算机的内存最小组成单元是bit,不过有意义的存储单元是byte,一般由8个bit构成。内存可以看做是大量二进制byte构成的。通常来讲这些byte是没有特殊意义的。那么计算机是如何将有实际意义的数据存储在这些没有意义的byte中的呢。方法是这样的:数据的存储一般是这样的格式: TYPE varName=data;而计算机已经指定了各种类型data与相应变量类型之间的转换规则(不同原创 2013-05-23 15:29:16 · 1025 阅读 · 0 评论 -
Points
为什么有些头文件中的函数申明,找不到其定义部分的代码 汗~ 其实很多库函数都是已经被编译成静态库(*.lib)或目标代码(*.obj)文件的。它们的函数原型被写在相应的头文件中,相当于一个接口,被其他程序调用。具体的实现部分已经被编译好了。所以当然看不到函数体的定义。当你的程序被编译时,编译程序会取出静态库中的目标代码,链接到你的EXE文件中。这就好比你写好的DLL文件,具体函数都已被原创 2013-04-08 16:39:56 · 1330 阅读 · 0 评论