从今天开始一步步学习c++
#include<iostream>
字符# 是预处理标识,用来对文本进行预处理操作。预处理标志表示代码要最先进行处理,所以,它要再编译器编译代码之前运行。#后的include是个预处理指令,它后边的<>表示其内文件在这里读入。
文件iostream输入输入输出流,是一个标准库,它包含了众多的成员函数。
每个c++都有一个main函数;
每个函数都需要标明其返回值类型;比如 int main()。
cout 它后边要跟一个左移运算符<< 其后的所有内容都会被输出到屏幕上;如果要输出字符,必须要用双引号将其引起来。
cin 后边见右移运算符>>。
#include<iostream>
int main()
{
std::cout<<"I like c++!\n"
retrun 0;
}
endl和\n的区别:
endl除了具备“\n”的换行功能外,还调用输出流flush函数,刷新换出去,让数据直接写入文件或者显示在屏幕上。
std::是个命名空间标识符,c++标准库中的函数或对象都是在命名空间std中定义的,所以我们要使用的标准库中的函数或者对象都要用std来限定。
对象cout是标准库所提供的一个对象,而标准库在命名空间中被指定为std,所以在使用cout的时候前面要加上std::。这样编译器就会明白我们调用的cout是命名空间std中的cout。
使用标准库文件iostream时,要写上std;使用非标准库文件iostream.h则不用写。
如果在使用标准库文件iostream时,不喜欢重复地使用std,可以用using std::cout;告诉编译器我们使用的是标准库的cout函数。也可以用using namespace std 来代替using std::cout。
iostream.h和iostream的区别
iostream.h 为非标准的输入输出流,.h的头文件是c语言的格式。由于当时还灭有命名空间这个说法,所以也就不存在std这个命名空间标识符。所以用iostream.h也就用不着std或者using namespace std。
iostream 为标准输入输出流,它是C++规范的带有命名空间的头文件,它包含在std命名空间内。
iostream流内包含cin和cout输入输出流,使用cout的时候前面必须加std。
对于编码,除了是否加std或者using namespace之外,其他编程基本一样,对于不同平台,前者不可移植。
命名空间:c++引入命名空间的目的是为了减少和避免命名冲突。程序较大时,就很难避免重名,特别是多人合作的情况下。
#include<iostream>
namespace a
{
int b=5;
}
namespace c
{
int b=8;
}
int main()
{
int b=9;
std::cout<<b<<" "<<a::b<<" "<<c::b<<std::endl;
retrun 0;
}