开始
初识输入输出
标准输入输出对象
C++标准库(iostream)定义了四个IO对象。
输入
cin(发音:see-in):istream对象,用于处理输入
cin >> 变量;
输出
cout(发音:see-out):ostream对象,称为标准输出
cerr(发音:see-err):用于输出警告和错误信息
clog(发音:see-log):用于输出日志
endl:缓冲刷,相当于 或 等,在各种地方换行,并刷新缓冲区
例1
#include <iostream>
int main(int argc, char *argv[])
{
std::cout << "请输入两个整数:";
int num1, num2;
std::cin >> num1 >> num2;
std::cout << num1
<< "和"
<< num2 << "的和为:"
<< num1 + num2 << std::endl;
return 0;
}
请输入两个整数:1 23
1和23的和为:24
详解
命名空间
在例1中可以看到这样的代码
std::cout
std::cin
而不是直接用
cout
cin
前缀
std::
指出名字cout
和cin
是定义在名为std
的 命名空间(namespace) 中的
命名空间可以帮我们避免名字冲突, 标准库定义的所有名字都在命名空间
std
中
我们可以通过 作用域运算符(::) 来指出命名空间,也可以使用
using namespace
来使用(后面详细讲解)
例2:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
cout << "Hello world" << endl;
return 0;
}
向流写入数据
输出运算符:<<
<<接收两个运算对象,左侧的运算对象必须是一个ostream
右侧对象是要打印的值
此运算符将给定的值写到指定的ostream对象中
返回左侧运算对象
从流中读取数据
输入运算符:>>
与<<类似,左侧运算对象为istream对象
返回左侧运算对象
输入输出运算符和位移运算符都是<<和>>
#include <iostream>
#include <cstdio>
#include <cstdlib>
using namespace std;
int main(int argc, char *argv[])
{
int num;
cin >> num;
int num1 = num >> 2;
int num2 = num << 2;
char cnum1[1024]; // 转换为二进制字符串
char cnum[1024];
char cnum2[1024];
itoa(num1,cnum1,2);
itoa(num2,cnum2,2);
itoa(num,cnum,2);
cout << cnum << " << 2 = " << cnum2
<< "
" << cnum << " >> 2 = " << cnum1 << endl;
return 0;
}
11
1011 << 2 = 101100
1011 >> 2 = 10