标签:des style color 使用 strong os
哎,真是不想吐槽考驾照的艰辛历程了。跑到大西郊,顶着大太阳,一天就能摸上个十几分钟二十分钟的车,简直不要太坑爹,这两天真是做的我屁股疼的不行。。。今天果断不去了。只可惜我的大阿根廷啊,坚持到最后功亏一篑惜败于德国,枉我四点自然醒起来看了接下来的比赛。不能不佩服诺伊尔,拉姆,博阿滕组成的后防线,让阿根廷整场没有几个有威胁的射门。祝贺我大克洛泽在职业生涯暮年能将大力神杯捧入怀中。。。拜拜 巴西世界杯,拜拜 阿根廷,拜拜, 梅西!
2.1 字符串常量
将字符数组初始化为字符串的工作看上去冗长乏味--使用大量的单引号,且必须记住加上空字符。不必担心,有一种更好的。将数组初始化为字符串的方法---只需要使用一个用引号括起来的字符串即可,这种字符串被称为字符串常量,如:
<span style="font-size:14px;">char dog[8]={'b','e','a','u','x',' ','i'};//not a string char cat[8]={'f','a','t','e','s','s','a','\0'};//a string char bird[11]="Mr.Cheeps"; char fish[]="Bubbles"; </span>
<span style="font-size:14px;">cout<<"I'd give my right arm to be" "a great violinist.\n" cout<<"I'd give my right arm to be a great violinist.\n"; cout<<"I'd give my right arm to" </span>
<span style="font-size:14px;">"be a great violinist.\n";</span>
2.2 字符串的读入 cin与getline的讨论
<span style="font-size:14px;">cin.get(name,ArtSize); cin.get(dessert,ArtSize);//此时dessert只会读入一个换行符而显示为空</span>
<span style="font-size:14px;">cin.get(name,ArtSize); cin.get(); cin.get(dessert,ArtSize);//ok</span>
<span style="font-size:14px;">cin.get(name,ArtSize).get(); cin.getline(name1,ArtSize).getline(name2,ArtSize);</span>
<span style="font-size:14px;">#include<iostream> int main() { using namespace std; cout<<"What year was your house built?\n"; int year; cin>>year; cout<<"What is its street address?\n"; char address(80) cin.getline(address,80);//此时会读入回车 cout<<"Year built:"<<year<<endl; cout<<"Done!\n"; return 0; }</span>
2.3 再谈getline
下面是一行输入到读取的代码:
<span style="font-size:14px;">cin.getline(charr,20);</span>这种句点表示法表明,函数getline()是istream类的一个类方法。下面是另外一行代码:
<span style="font-size:14px;">getline(cin.str);</span>
2.4 枚举类型
C++的enum工具提供了另一种创建符号常量的方式,这种方式可以替代const。它还允许定义新类型,但必须按严格的限制进行。请看下面语句:
<span style="font-size:14px;">enum spectrum{red,orand,yellow,green,blue,violet,indigo};</span>该语句完成了:让spectrum成为了一个新类型,它成为枚举类型;其次将red,orange,yellow等作为符号常量,它们对应整数值0~7.这些常量叫做枚举量,在默认情况下,将整数值给予枚举量,第一个枚举量的值为0,第二个为1,依次类推。枚举变量具有下面的性质。
<span style="font-size:14px;">spectrum band; band=blue;//valid band=2000;//invalid,2000 not an enumerator //对于枚举,只定义了赋值运算符,具体地说没有为其定义算数运算: band=orange;//valid ++band;//error band=orange+red;//error //枚举类型可被提升为整形,但是int类型不能自动转换为枚举类型 int color=blue;//valid,spectrum type promoted to int band=3;//error color=3+red;//red converted to int</span>
正如你看到那样,枚举的规则相当的严格。实际上,枚举更常常被用来定义相关的符号常量,而不是新类型。如果打算只使用常量。而不创建枚举类型的变量,则可以省略枚举类型的名称。如:
<span style="font-size:14px;">enum{red,orange,yellow...};</span>
2.5 在使用new与delete可能会遇到的相关问题
我们知道,当需要内存时,我们可以使用new来请求,当使用完内存时,我们使用delete运算符来将其归还给内存池。在使用new与delete时,我们应当遵循以下规则:
下面简要介绍一下内存泄露或内存被耗尽:计算机可能由于没有足够的内存而无法满足new请求。在这种情况下,new通常会引发异常,该异常会在以后讲解。在C++中,值为零的指针被称为空指针。C++确保空指针不会指向有效的数据,因此它常备用来表示运算符或函数失败。被泄露的内存将在程序的整个生命周期都不可使用;这些内存被分配出去但是无法使用。极端情况下是,内存泄露非常严重,以至于应用程序所用的内存被耗光,出现内存耗尽的错误,导致程序崩溃
2.6 自动存储、静态存储与动态存储
<span style="font-size:14px;">static double fee=56.50;</span>
C++ Primer Plus的若干收获--(二),布布扣,bubuko.com
标签:des style color 使用 strong os
原文地址:http://blog.csdn.net/yzu_120702117/article/details/37757441