7.1输入与输出
-格式化I/O:
使用移位操作符进行输入(>>)输出(<<)
int x;
cin >> x;
可以看做一个函数,第一个参数是cin类,第二个参数是int类
如果x是char类,一样看做函数,这里是使用了运算符重载适应不同类
-格式控制
位掩码类型(showpos)
#include<iostream>
int main(int argc, char* argv[])
{
char x = '0';
std::cout.setf(std::ios_base::showpos);
std::cout << x << std::endl;
int y = static_cast<int>(x);
std::cout << y << std::endl;
return 0;
}
结果
取值相对随意(width)
#include<iostream>
int main(int argc, char* argv[])
{
char x = '0';
std::cout.setf(std::ios_base::showpos);
std::cout.width(10);
std::cout << x << std::endl;
int y = static_cast<int>(x);
std::cout << y << std::endl;
return 0;
}
cin输入后会重置width为0
结果
fill
#include<iostream>
int main(int argc, char* argv[])
{
char x = '0';
std::cout.setf(std::ios_base::showpos);
std::cout.width(10);
std::cout.fill('.');
std::cout << x << std::endl;
int y = static_cast<int>(x);
std::cout << y << std::endl;
return 0;
}
结果
补充:另一种写法
#include<iostream>
#include<iomanip>//要引入这个头文件
int main(int argc, char* argv[])
{
char x = '0';
int y = static_cast<int>(x);
std::cout << std::showpos << std::setw(10) << std::setfill('.') << x << '\n';
std::cout << std::showpos << std::setw(10) << std::setfill('.') << y << '\n';
return 0;
}
cin提取行为对类型不同
7.2文件与内存操作
文件操作
处于打开状态时无法再次打开
打开才能进行I/O操作
fstream
ifstream
ofstream
is_open()
open()
close()
程序运行完调用析构函数会关闭,关闭会把缓存中的内容写入文件里
通过{}语句体形成域控制生存周期
文件流的打开模式
每种文件流都有缺省打开方式
Comments 2 条评论
博主 BZcloud
1111
博主 LvacjKoz
这是一条私密评论