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;
}




相关推荐
时空系3 分钟前
第8篇:结构模板——自定义数据类型 Rust中文编程
开发语言·网络·rust
yuweiade6 分钟前
GO 快速升级Go版本
开发语言·redis·golang
lly2024068 分钟前
SOAP Body 元素
开发语言
zhouwy1131 小时前
Linux文件系统与IO编程
linux·c++
咸鱼2.02 小时前
【java入门到放弃】Dubbo
java·开发语言·dubbo
JAVA面经实录9178 小时前
Java企业级工程化·终极完整版背诵手册(无遗漏、全覆盖、面试+落地通用)
java·开发语言·面试
王老师青少年编程9 小时前
csp信奥赛C++高频考点专项训练之贪心算法 --【哈夫曼贪心】:合并果子
c++·算法·贪心·csp·信奥赛·哈夫曼贪心·合并果子
周杰伦fans9 小时前
AutoCAD .NET 二次开发:深入理解 EntityJig 的工作原理与正确实现
开发语言·.net
叼烟扛炮10 小时前
C++第二讲:类和对象(上)
数据结构·c++·算法·类和对象·struct·实例化
样例过了就是过了11 小时前
LeetCode热题100 最长公共子序列
c++·算法·leetcode·动态规划