开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。
2017-02-20 16:56
1116 查看
// ConsoleApplication10.cpp : 定义控制台应用程序的入口点。
//
//
#include <iostream> #include <vector> #include <string> using namespace std; struct ErrordRecord //错误记录 { public: string pathWay;; string fileName; int line; int num;//记录的数目 }; int main() { vector<ErrordRecord *> errordRecords; // while (errordRecords.size()<8)//当记录多余8条是结束程序 string pathWay; string fileName; int line; while (cin >> pathWay >> line) { fileName = pathWay.substr(pathWay.find_last_of("\\") + 1); bool exist = false;//如果记录是否已经存在 for (int i = 0;i < errordRecords.size();++i) { if (fileName == (errordRecords[i]->fileName) && line == (errordRecords[i]->line)) { errordRecords[i]->num = (errordRecords[i]->num) + 1; exist = true; break; } } if (exist == false)//记录不存在 { ErrordRecord *errordRecord = new ErrordRecord(); errordRecord->fileName = fileName; errordRecord->line = line; errordRecord->num = 1; errordRecords.push_back(errordRecord); } } //根据数目多少输出,冒泡排序 for (int i = 0;i < errordRecords.size();++i) { for (int j = i + 1;j < errordRecords.size();++j) { if (errordRecords[i]->num < errordRecords[j]->num) { string fileName = errordRecords[i]->fileName; int line = errordRecords[i]->line; int num = errordRecords[i]->num; errordRecords[i]->fileName = errordRecords[j]->fileName; errordRecords[i]->line = errordRecords[j]->line; errordRecords[i]->num = errordRecords[j]->num; errordRecords[j]->fileName = fileName; errordRecords[j]->line = line; errordRecords[j]->num = num; } } } //for (int i = 0;i < errordRecords.size();++i) for (int i = 0;i < errordRecords.size() && i < 8;++i)//输出前八条记录 { if (errordRecords[i]->fileName.length() > 16) { cout << errordRecords[i]->fileName.substr(fileName.length()-16) << " " << errordRecords[i]->line << " " << errordRecords[i]->num << " "; } else { cout << errordRecords[i]->fileName << " " << errordRecords[i]->line << " " << errordRecords[i]->num << " "; } } return 0; };
相关文章推荐
- 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。
- 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。
- 华为2015机试--记录出错的代码所在的文件名称和行号
- 用代码捕捉代码出错的所在的文件与行号与错误
- 记录出错的代码坐在的文件名称和行号
- c#开发一个“记事本”程序,要求能够实现文件的新建、打开、编辑、保存功能
- Visual Studio 2013开发 mini-filter driver step by step 获取可执行文件名称 - 实现process monitor的一个功能 (10)
- 程序日志中自动记录所在函数名、文件名、行号,并定向输出到一个日志文件
- 对原来的模块修改后,最好在解释器里把修改好的代码重新写再粘贴到py文件里,否则F5运行py模块时,总是出错误,如缩进不对 如for语句没写冒号 就导致cmd sdist和install 出错
- 用C语言开发一个BT下载软件 (四) ------ 代码实现-1-种子文件解析模块
- PHP开发的一个小小项目,记录下实现思路(附上实现功能的示例代码)(二)
- 用C语言开发一个BT下载软件 (四) ------ 代码实现-3-出错处理模块和运行日志模块
- 教你如何将工程中的一个功能模块提取成library库文件,供其他工程轻松接入,只需简单5步
- PHP开发的一个小小项目,记录下实现思路(附上实现功能的示例代码)(一)
- 一个小型即时通讯项目的开发经验4--模块设计与功能分配
- Apache模块开发/用C语言扩展apache(3:一个非常简单的apache module)
- 用C#代码生成一个简单的PDF文件
- 一个简单的文件上传功能控件(原创)
- 如何在Cuyahoga中新增一个简单的功能模块
- 一起来学J2ME_1:撰写一个手机系统属性显示程序 (附jad文件的错误代码)