1)有些窗口环境在独立的窗口中运行程序,并在程序运行完毕后自动关闭该窗口。要让窗口一直打开,直到你按任何键,可在return语句之前添加:cin.get();。
2)C++注释:C++注释以双斜杠(//)打头,到行尾结束。可以位于单独的一行上,也可以和代码位于同一行上。编译器完全忽略注释。
/*--------------------------------------------------*/
这个是C风格的注释,可以跨越多行。在C++中也适用,但应尽量使用C++风格注释,因为这里不涉及到结尾符号与起始符号的正确配对,所以它产生问题的可能性很小。
应该使用注释来说明程序,程序越复杂,注释的价值就越大。不仅帮助别人理解代码,也有助于自己日后重新应用代码。
3)#include <iostream>
该编译指令导致预处理器将iostream文件的内容添加到程序中。在源代码被编译之前,替换或添加文本。也就是说:iostream文件的内容取代程序中此代码行。
C++头文件没有扩展名(.h)。有些C头文件被转换为C++头文件,只是去掉了扩展名h(使之成为C++风格),并在前面加上前缀c(表面来自c语言)。如math.h-->cmath。
4)如果使用iostream,而不是iostream.h,则应该使用下面的名称空间编译指令来使iostream中的定义对程序可用,即:using nemespace std;
类、函数和变量就是C++编译器的标准组件,它们是在名称空间std中。仅当头文件没有扩展名h时,才需要添加这个名称空间。
使用cin和cout进行输入和输出的程序必须包含文件iostream。如果没有使用:using nemespace std;
这句,那么就要这样运用cin,cout,endl:
std::cout<<"Come up with me!";
std::cin>>string[];
std::cout<<std::endl;
或者在前面加上using ,也就是这样:
using std::cout;
using std::endl;
using std::cin;
5)cout<<"come up and C++ me some fime";
cout的对象属性包括一个插入运算符(<<),它可以将其右侧的字符串信息插入到输出流中。
<<符号表示将该字符串发送给cout,指出了信息流动的路径。
如果string是一个字符串,则这样表达来显示该字符串:
cout<<string;
<<是运算符重载的例子,既表示插入运算符,也表示按位左移运算符。
&既表示地址运算符,也表示按位AND运算符。
*既表示乘法,也表示指针解除引用。
6)控制符endl:另起一行
cout<<endl;
在输出流中插入endl将导致屏幕光标移动到下一行开头。
endl在头文件iostream中定义,且位于名称空间std中。
C语言换行符:“\n”
cout<<"What is next?\n";也能起到换行的效果
二者区别:显示引号括起的字符串时,一般用换行符“\n”,其他情况则用控制符endl。endl确保程序继续运行前刷新输出(就是立即将内容显示在屏幕上);而使用“\n”不一定能这样做。
7)C++代码格式化:
不能把空格、制表符或回车放在元素中间,也不能把回车放在字符串中间。下面做法是错误的:
int ma in() //空格 re
turn 0; //换行符
cout <<"never give
up!"; //换行符
必须用空格、制表符或回车将两个标记分开,空格、制表符和回车统称为空白。注意,空格和回车是可以互换的。
int intmain() 错误
main() 正确 int main() 正确
return(0); 正确
return0; 错误 return(0); 正确
每条语句占一行。
每个函数都有一个开始花括号和一个结束花括号,这两个花括号各占一行。
函数中的语句都相对于花括号进行缩进。
与函数名称相关的圆括号周围没有空白。也就是int foo(); foo也()之间不应该有空格。
8)使用cout进行拼接
可以将4条语句合并为一条:
cout<<"now you have"<<carrots<<"carrots"<<endl;
也可以分开来书写:
cout<<"now you have";
cout<<carrots;
cout<<"carrots";
cout<<endl;
也可以将一条语句写在4行上:
cout<<"now you have";
<<carrots;
<<"carrots";
<<endl;
这是因为自由格式规则将换行符和空格看作是可以互换的。
注意:cout语句的输出紧跟在前一条cout语句的输出后面,即使两条cout语句之间有其他语句,也是如此。
9)关于main函数的调用
int main()
{... ...
return 0;
}
程序中没有哪个地方可以看出对main函数的调用?
可以将计算机操作系统(如UNIX或Windows)看作调用程序。因此,函数调用main函数是返回给操作系统的。很多操作系统都可以使用程序的返回值。
10)让程序访问名称空间std的方法有一下4种:
a,将using namespace std;放在函数定义之前,让文件中所有的函数都能够使用名称空间std中所有的元素。
b,将using namespcae std;放在特定的函数定义中,让该函数能够使用名称空间std中所有的元素。
c,在特定的函数中使用using std::这样的编译命令,让该函数使用特定的元素。
d,完全不用编译指令using ,而在需要使用名称空间std中的元素时,再使用前缀std::。
注意区分c和d两种方法的差别。
第二章(完)