如果可能的话,使用 PC-Lint、LogiScope 等工具进行代码审查。

 #include <iostream>
#include <algorithm>
#include <vector>
#include <stdlib.h>
#define ARRAY_SIZE 15
/* run this program using the console pauser or add your own getch, system("pause") or input loop */ using namespace std; //定义整型数的vector容器类
typedef vector<int > IntVector ; //显示数组
void put_array(int x[],int size) {
for(int i=;i<size;i++)
cout<<x[i]<<" ";
cout<<endl;
} //显示vector容器中的元素
void put_vector(IntVector v,char *name)
{
IntVector::iterator theIterator;
cout<<name<<": ";
for (theIterator=v.begin();theIterator!=v.end();++theIterator){
cout<<(*theIterator)<<" ";
}
cout<<endl;
} //产生指定范围的整数随机数
int getrand(int min,int max) {
int m;
m=(max-min);
m=min+double(rand())/RAND_MAX*m ;
return m;
} //在main()函数中测试sort()和partial_sort()算法
int main(int argc, char** argv) { int i;
//--------------------------------------------
// sort()和partial_sort()算法对普通数组处理
//---------------------------------------------
//sort()算法处理数组,并显示
int x[ARRAY_SIZE];
for (i=;i<ARRAY_SIZE;i++) {
x[i]=getrand(,);
}
cout<<"x[]:";
put_array(x,ARRAY_SIZE);
sort(x,x+ARRAY_SIZE);
cout<<"sort(x,x+ARRAY_SIZE):"<<endl;
put_array(x,ARRAY_SIZE); //partial_sort()算法对于数组进行处理
int y[ARRAY_SIZE];
for (i=;i<ARRAY_SIZE;i++) {
y[i]=getrand(,) ;
}
cout<<"y[]:";
put_array(y,ARRAY_SIZE);
partial_sort(y+,y+,y+ARRAY_SIZE);
cout<<"partial_sort(y+2,y+7,y+ARRAY_SIZE):"<<endl;
put_array(y,ARRAY_SIZE);
//--------------------------------------------
// sort()和partial_sort()算法对vector容器的处理
//---------------------------------------------
IntVector Numbers1,Numbers2;
for(i=;i<;i++) {
Numbers1.push_back(getrand(,));
Numbers2.push_back(getrand(,));
}
put_vector(Numbers1,"Numbers1");
put_vector(Numbers2,"Numbers2"); //sort()算法处理并显示
sort(Numbers1.begin(),Numbers1.end());
cout<<"After call sort():"<<endl;
put_vector(Numbers1,"Numbers1"); //partial_sort()算法处理并显示
partial_sort(Numbers2.begin()+,Numbers2.begin()+,Numbers2.end());
cout<<"After call partial_sort():"<<endl;
put_vector(Numbers2,"Numbers2"); return ;
}

如果可能的话,使用 PC-Lint、LogiScope 等工具进行代码审查的更多相关文章

  1. PC lint -sem 用法示例

    -sem(std::auto_ptr::auto_ptr,custodial(1)) // the auto_ptr class type // handles custody automagical ...

  2. Android内存优化(五) Lint代码扫描工具

     1.使用 工具栏 -> Analyze -> Inspect Code… 点击 Inspect Code 后会弹出检查范围的对话框: 默认是检查整个项目,我们可以点击 Custom sc ...

  3. 只有PC端的报表工具使用太不方便了!有没有好用的手机报表app?

    马上到年底了,签订的销售合同需尽快回款,销售经理此时正在下午出差的出租车上,通过手中的手机他查看了一下今天的回款报表 项目已经进行到了关键期,项目经理正在奔赴项目城市的高铁列车上,项目今天的进度报表已 ...

  4. 高质量C++/C编程指南(林锐)

    推荐-高质量C++/C编程指南(林锐) 版本/状态 作者 参与者 起止日期 备注 V 0.9 草稿文件 林锐   2001-7-1至 2001-7-18 林锐起草 V 1.0 正式文件 林锐   20 ...

  5. 高质量C++[转]

    高质量C++/C编程指南 文件状态 [  ] 草稿文件 [√] 正式文件 [  ] 更改正式文件 文件标识: 当前版本: 1.0 作    者: 林锐 博士 完成日期: 2001年7月24日 版 本  ...

  6. 学习笔记之高质量C++/C编程指南

    高质量C++/C编程指南 http://man.lupaworld.com/content/develop/c&c++/c/c.htm 高质量C++/C编程指南(附录 C :C++/C 试题的 ...

  7. 高质量C++/C编程指南

    http://man.chinaunix.net/develop/c&c++/c/c.htm#_Toc520634042 高质量C++/C编程指南 文件状态 [  ] 草稿文件 [√] 正式文 ...

  8. C++编程指南续(10-11)

    十.类的继承与组合 对象(Object)是类(Class)的一个实例(Instance).如果将对象比作房子,那么类就是房子的设计图纸.所以面向对象设计的重点是类的设计,而不是对象的设计. 对于C++ ...

  9. debug makefile 及 lint 软件质量软件

    make -d should give you more than enough information to debug your makefile. Be warned: it will take ...

随机推荐

  1. 数据库case,when学习

    前几天工作中遇到了一个数据库统计相关的东西,主要使用case,when实现.如今说说基本情况: 有两个表school,studens,当中 school表结构例如以下: students表结构例如以下 ...

  2. Python 创建包含列表的元组

    “可变”的tuple前面我们看到了tuple一旦创建就不能修改.现在,我们来看一个“可变”的tuple:>>> t = ('a', 'b', ['A', 'B'])注意到 t 有 3 ...

  3. 深入理解javascript闭包【整理】

    原文链接:http://www.cn-cuckoo.com/2007/08/01/understand-javascript-closures-72.html 英文原文:http://www.jibb ...

  4. Android 4.4 KitKat 支持 u 盘功能

    Android U 盘功能实现和分析 u 盘功能实现结果: u 盘会当成 usb storage 在 Settings Storage 里面显示. 准备工作 内核需支持 usb host,需支持 FU ...

  5. unix 网络编程第八章 UDP

    code 见 https://github.com/juniperdiego/Unix-network-programming-of-mine/tree/master/udpserv01 1 建立so ...

  6. Cookie 获取访问时间

    服务器将客户端需要缓存的数据,发送到客户端,客户端保存在本地的这些缓存数据就是Cookie.区别于Session.   获取用户访问时间代码: response.setCharacterEncodin ...

  7. 面面具到!android重力传感器

    前两篇都是向大家介绍了很有意思的两种手势操作,嵌入我们游戏中,不得不说让游戏的自由度.可玩性和趣味性都增色不少!那么今天继续给大家介绍一亮点!传感器! 一:什么是传感器: 所谓传感器能够探测如光.热. ...

  8. .NET框架- in ,out, ref , paras使用的代码总结 C#中in,out,ref的作用 C#需知--长度可变参数--Params C#中的 具名参数 和 可选参数 DEMO

    C#.net 提供的4个关键字,in,out,ref,paras开发中会经常用到,那么它们如何使用呢? 又有什么区别? 1 in in只用在委托和接口中: 例子: 1 2 3 4 5 6 7 8 9 ...

  9. 实战DeviceIoControl系列之四:获取硬盘的详细信息

    Q 用IOCTL_DISK_GET_DRIVE_GEOMETRY IOCTL_STORAGE_GET_MEDIA_TYPES_EX只能得到很少的磁盘参数,我想获得包括硬盘序列号在内的更加详细的信息,有 ...

  10. python 操作redis之——HyperLogLog (八)

    #coding:utf8 import redis # python 操作redis之——HyperLogLog r =redis.Redis(host=") # 1.Pfadd 命令将所有 ...