讲*和++同时用于指针时提出了这样的问题:将什么解除引用,将什么递增. ]={21.1, 32.8, 23.4, 45.2, 37.4 }; double *pt=arr; //pt指针指向arr[0] 值为 21.1 ++pt; //pt指针指向arr[1] 值为 32.8 前缀运算符的从右到左结合规则意味着 *++p 的含义如下: 先将++应用于pt(因为++位于*的右边)然后将*应用于被递增后的pt-->指针递增 double x=*++pt; //指针+1,指向arr[2] 值为23.4…
C++ Primer Plus 第6版 指针和数组基本等价的原因在于指针算术! 一.指针 ⑴整数变量+1后,其值将增加1: ⑵指针变量+1后,增加的量等于它指向的类型的字节数: ⑶C++将数组名解析为地址: 例如:如果系统对double使用8个字节存储,其数值将增加8,   如果系统对short使用2个字节存储,则指针值将增加2 #include <iostream> int main() { using namespace std; ]={10000.0,20000.0,30000.0};…
1.C++新手在指定结构成员时,不知道何时用.运算符,何时是用->运算符. 结论:如果结构标识符是结构名,则使用句点运算符:如果标识符是指向结构的指针,则使用箭头运算符. #include <iostream> struct inflatable { ]; float volume; double price; }; int main(){ using namespace std; int a; //仅为保持dos界面 inflatable *ps=new inflatable; cou…
HTML5已经广泛应用于各智能移动终端设备上,而且绝大部分技术已经被各种最新版本的测览器所支持:逐一剖析HTML5标准中包含的最新技术,详细介绍了HTML5新标准中提供的各种API,各种各样的应用实例,可以直接应用于自己的HTML5程序中. HTML5移动开发即学即用(双色)书中几乎涵盖了HTML5规范中涉及的所有技水(还在酝酿中的IndexedDatabase除外),是您能找到的真正的HTML5技术大全.包含作者精心编写的,运行于常用PC测览器以及智能手机上的应用实例,操作性与实用性俱佳,可以…
指针基础 理解指针的最佳方法是画图,学习使用基本指针,不要产生空指针. 存储控件分配 存储控件分配是指在内存预留空间的过程.就像一个虚拟菜谱一样,指针对应菜名,其所指的内存空间中的数据对应实际的菜. 数据集合与指针的算术运算 数据集合主要指结构和数组.指针的算术运算定义指针的计算规则.指向结构的指针对于建立数据结构起着至关重要的作用.在c中,数组和指针一样,都是以指针算术运算方法进行运算的. 作为函数参数的指针 通过这种方式,可以按照传递应用的方法传递函数参数.在c语言中,传递数组或大型结构时,…
C++ Primer Plus 第6版 字符串:是存储在内存的连续字节中的一系列字符. C++处理字符串的方式有2种: 一.来自C语言.常被称为C-风格字符串(C-Style-string) 1)从字符数组-->字符串 存储在连续字节中的一系列字符意味着可以讲字符串存储在char数组中,其中每个字符都位于自己的数组元素中. C-style字符串具有一种特殊的性质:以空字符结尾,空字符被写为'\0' ]={'b','e','a','u','t',' ','i','i'}; //不是一个字符串,仅仅…
枚举 定义:在默认情况下讲整数值赋给枚举量,第一个枚举量的值为0,第二个枚举量的值为1,依次+1 一.定义一个枚举,枚举类型,枚举量 *与C#相比个人认为C++的enum不好一点是不能通过枚举名点其中的枚举量!!!!感觉证人都不好了 T-T enum spectrum{red,orange,yellow,green,blue,violet,indigo,ultraviolet};//他们对应的数值0~7,red,orange...这些常量叫做枚举量 1.可以用枚举名称来声明这种类型的变量: sp…
OSI七层模型     表示层:用来解码不同的格式为机器语言,以及其他功能. 会话层:判断是否需要网络传输. 传输层:识别端口来指定服务器,如指定80端口的www服务. 网络层:提供逻辑地址选路,即发送ip地址到接收的ip地址. 数据链路层:成帧,识别MAC地址来访问媒介,如交换机的功能. 物理层:设备之间的比特流传输.   TCP/IP四层模型     网络接口层:公网到达局域网后需要转化为对应的MAC地址.交换机解析判断数据要发给MAC地址对应的哪台电脑.使用的是arp协议. 网际互联层:网…
最近在学C++,在<C++ Primer>第五版的3.1节中说到使用using声明来使用命名空间中的成员,<C++ Primer>中这样写道: 有了using声明就无须专门的前缀(形如命名空间::)也能使用所需的名字了.using声明具有如下的形式: using namespace::name; 一旦声明了上述语句,就可以直接访问命名空间中的名字. 这样,形如书中所说 #include <iostream> using std::cin; using std::cout…
const与指针 摘自C++ Primer Plus (第五版) 中文版 const(常量): const变量的地址可以给指向const的指针,但不能指向常规类型的指针: const float a=112.3 const flaot *p1=&a //right const float a=112.3 flaot *p1=&a //wrong 禁止将非常量的数组的地址赋给非常量指针: const int a=[1,2,3,4,5] int sum(int arr[],int i) { r…