C++语言程序设计 (郑莉)第十一章 流类库与输入/输出














cpp 复制代码
#include <iostream>
using namespace std;
int main() {
	double values[] = { 1,23,35.36,653.7,4358.24 };
	for (int i = 0; i < 4; i++) {
		cout.width(10);
		cout << values[i] << endl;
	}
	return 0;
}
cpp 复制代码
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;

int main() {
	double values[] = { 1.23,35.36,653.7,4358.24 };
	string names[] = { "Zoot","Jimmy","AI","Stan" };
	for (int i = 0; i < 4; i++) {
		cout << setw(6) << names[i] << setw(10) << values[i] << endl;
	}
	return 0;
}
cpp 复制代码
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;

int main() {
	double values[] = { 1.23,35.36,653.7,4358.24 };
	string names[] = { "Zoot","Jimmy","AI","Stan" };
	for (int i = 0; i < 4; i++) {
		cout << setiosflags(ios_base::left) << setw(6) << names[i]
			<< resetiosflags(ios_base::left) << setw(10) << values[i] << endl;
	}
	return 0;
}



cpp 复制代码
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;

int main() {
	double values[] = { 1.23,35.36,653.7,4358.24 };
	string names[] = { "Zoot","Jimmy","AI","Stan" };
	//cout << setiosflags(ios_base::fixed);
	//cout << setiosflags(ios_base::scientific);
	for (int i = 0; i < 4; i++) {
		cout << setiosflags(ios_base::left) << setw(6) << names[i]
			<< resetiosflags(ios_base::left) << setw(10) << setprecision(1) << values[i] << endl;
	}
	return 0;
}


cpp 复制代码
#include <iostream>
#include <fstream>
using namespace std;
struct Date {
	int mon, day, year;
};
int main() {
	Date dt = { 6,10,92 };
	ofstream file("data.dat", ios_base::binary);
	file.write(reinterpret_cast<char*>(&dt), sizeof(dt));
	file.close();
	return 0;
}


cpp 复制代码
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
template <class T>
inline string toString(const T& v) {
	ostringstream os;
	os << v;
	return os.str();
}

int main() {
	string str1 = toString(5);
	cout << str1 << endl;
	string str2 = toString(1.2);
	cout << str2 << endl;
	return 0;
}






cpp 复制代码
#include <iostream>
using namespace std;
int main() {
	char ch;
	while ((ch = cin.get()) != EOF) {
		cout.put(ch);
	}
	return 0;
}
cpp 复制代码
#include <iostream>
#include <string>
using namespace std;
int main() {
	string line;
	cout << "Type a line terminated by '\t'" << endl;
	getline(cin, line, '\t');
	cout << line << endl;
	return 0;
}
cpp 复制代码
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
struct SalaryInfo {
	unsigned id;
	double salary;
};
int main() {
	SalaryInfo employee1 = { 600001,8000 };
	ofstream os("payroll", ios_base::out | ios_base::binary);
	os.write(reinterpret_cast<char*>(&employee1), sizeof(employee1));
	os.close();
	ifstream is("payroll", ios_base::in | ios_base::binary);
	if (is) {
		SalaryInfo employee2;
		is.read(reinterpret_cast<char*>(&employee2), sizeof(employee2));
		cout << employee2.id << " " << employee2.salary << endl;
	}
	else {
		cout << "ERROR:Cannot open file 'payroll'." << endl;
	}
	is.close();
	return 0;
}
cpp 复制代码
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
int main() {
	int values[] = { 3,7,0,5,4 };
	ofstream os("integers", ios_base::out | ios_base::binary);
	os.write(reinterpret_cast<char*>(values), sizeof(values));
	os.close();
	ifstream is("integers", ios_base::in | ios_base::binary);
	if (is) {
		is.seekg(3 * sizeof(int));
		int v;
		is.read(reinterpret_cast<char*>(&v), sizeof(v));
		cout << "The 4th integers in the file 'integers' is" << v << endl;
	}
	else {
		cout << "ERROR:Cannot open file 'integers'." << endl;
	}
	return 0;
}
cpp 复制代码
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
int main() {
	ifstream file("integers", ios_base::in | ios_base::binary);
	if (file) {
		while (file) {
			streampos here = file.tellg();
			int v;
			file.read(reinterpret_cast<char*>(&v), sizeof(int));
			if (file && v == 0) {
				cout << "Position" << here << "is 0" << endl;
			}
		}
	}
	else {
		cout << "ERROR:Cannot open file 'integers'." << endl;
	}
	file.close();
	return 0;
}


cpp 复制代码
#include <iostream>
#include <fstream>
#include <cstring>
#include <sstream>
using namespace std;
template <class T>
inline T fromString(const string& str) {
	istringstream is(str);
	T v;
	is >> v;
	return v;
}

int main() {
	int v1 = fromString<int>("5");
	cout << v1 << endl;
	double v2 = fromString<double>("1.2");
	cout << v2 << endl;
	return 0;
}




相关推荐
Lazionr6 小时前
set和map的使用——从基础接口到实际应用
c++
YYYing.6 小时前
【设计模式系列 (五) 】原型模式
开发语言·后端·设计模式·原型模式·c/c++
重生之小比特6 小时前
【C++进阶】哈希表实现
开发语言·c++·哈希
m0_380743876 小时前
VisualStudio中OpenCV的创建与配置使用小结
开发语言·c++
凉茶钱6 小时前
【C++】动态内存管理完整解析:从内存划分到 new delete 底层原理
c语言·开发语言·c++·内存管理·动态内存
cu1436 小时前
细谈GM8775C的具体功能和应用
c语言·c++·人工智能·嵌入式硬件
小七在进步6 小时前
类和对象(五)
java·开发语言·算法
无名猿6 小时前
std::optional 完全指南:别再用 -1 和 nullptr 表达「没有值」
c++·标准库·现代c++·语法基础
Rebecca_aLi6 小时前
码匠教育:零基础学 Python,标识符到循环全套基础语法解析
开发语言·python·正则表达式
IvanCodes6 小时前
Python 正则表达式(十四):文本匹配、查找与替换
开发语言·python·正则表达式