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




相关推荐
yaoxin5211235 小时前
434. Java 日期时间 API - Period 基于日期的时间段
java·开发语言·python
凡人叶枫6 小时前
Effective C++ 条款30:透彻了解 inlining 的里里外外
linux·开发语言·c++·嵌入式开发·effective c++
noipp6 小时前
推荐题目:洛谷 P10907 [蓝桥杯 2024 国 B] 蚂蚁开会
c语言·c++·算法·编程·洛谷
学逆向的6 小时前
C++纯虚函数
开发语言·c++·网络安全
程序员二叉6 小时前
【JUC】ThreadLocal底层原理|内存泄漏|弱引用|跨线程传递方案
java·开发语言·面试·职场和发展·juc
程序员二叉6 小时前
【JUC】线程池全套深度详解|参数|流程|拒绝策略|调优|异常处理
java·开发语言·jvm·算法·面试·juc
凡人叶枫7 小时前
Effective C++ 条款22:将成员变量声明为 private
linux·开发语言·c++
Qt程序员7 小时前
掌握 Linux 内核调度:从原理到实现(进程篇)
java·开发语言
code bean7 小时前
【LangChain】检索器完全指南:从向量检索到生产级 RAG 架构
java·开发语言·微服务
LabVIEW开发8 小时前
LabVIEW + MATLAB 混合编程:爆炸场测试数据精准采集方案
开发语言·matlab·labview