pagenum.cpp
来自「Think in C++文中代码实现」· C++ 代码 · 共 47 行
CPP
47 行
//: PAGENUM.CPP -- put page numbers and date on code listings
#include <fstream.h>
#include <strstream.h>
#include <string.h>
#include <dir.h>
#include "allege.h"
const char* file = "..\\codexref.txt";
ofstream errors("c:\\tmp\\errors.txt", ios::app);
main(int argc, char ** argv) {
allege(argc == 2, "usage: pagenum filename");
ifstream database(file);
allegefile(database);
const sz = 100;
char buf[sz];
int flag = 0;
while(database.getline(buf, sz)) {
if(strncmp(buf, argv[1], strlen(argv[1])) == 0) {
flag++; // found match
char* p = strchr(buf, ']');
*p = 0;
p = strchr(buf, '[') + 1;
ostrstream s;
{
ifstream code(argv[1]);
allegefile(code);
s << code.rdbuf();
}
ofstream newcode(argv[1]);
allegefile(newcode);
newcode << "// "
<< p << " in \"Thinking in C++\" by Bruce Eckel"
<< endl << s.rdbuf();
}
}
if(!flag) {
const bsz = 100;
char buf[bsz];
errors << getcwd(buf, bsz)
<< " couldn't find match for " << argv[1] << endl;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?