随笔-9  评论-5  文章-0  trackbacks-0
  2008年10月24日
使用结构体作为返回值,可以使得函数的调用更加灵活和方便。

/************************************************************************/
/* 使用结构体作为返回值                                                                     */
/************************************************************************/
#include 
"iostream.h"
struct student
{
    
int id;
    
char name[20];
    
int age;
    
char department[20];
    
float gpa;
}
;

student init();                
//初始化,返回一个student的结构
void display(student arg);    //显示结构体

int main()
{
    display(init());    
//init()返回的是一个student结构体
    return 0;
}


void display(student arg)
{
    cout
<<"学号:"<<arg.id<<"  姓名:"<<arg.name<<"  年龄"<<arg.age<<"  专业:"<<arg.department<<"  成绩:"<<arg.gpa<<endl;
}

student init()
{
    student s1 
= {3221,"Tom",18,"Computer",86.33};    //初始化一个student的结构体
    return s1;                                        //返回一个student的结构体s1
}
posted @ 2008-10-24 12:46 longhr 阅读(2343) | 评论 (1)编辑 收藏

/************************************************************************/
/* 数组直接选择排序的简单实现,没有输入输出模块                                                                     */
/************************************************************************/
#include 
"iostream.h"

void sort(int a[],int size);
int main()
{
    
int num[]={21,12,45,34,67,30,21,3,56,98,99};

    sort(num,
sizeof(num)/sizeof(int));

    
return 0;
}

void sort(int a[],int size)
{
    
for (int i=0;i<size;i++)
    
{
        
int min=a[i],min_i=i;    //假设首元素是最小的,min_i表示是最小数字i坐标
        for (int j= i;j<size;j++)
        
{
            
if (a[j]<min)
            
{
                min
=a[j];
                min_i 
= j;
            }

        }

        
int temp = a[i];    //a[min_i]为找到的值最小的元素,要把最小的元素放在a[i]中
        a[i] = a[min_i];
        a[min_i]
= temp;
    }

}
posted @ 2008-10-24 11:20 longhr 阅读(254) | 评论 (0)编辑 收藏

/************************************************************************/
/* 简单的求数组中最大值的函数调用方法                                                                     */
/************************************************************************/
#include 
"iostream.h"
int max(int a[],int size);
int main()
{
    
int num[]={12,34,32,45,65,99,33,56,58,97};
    cout
<<max(num,sizeof(num)/sizeof(int))<<endl;
    
return 0;
}


int max(int a[],int size)
{
    
int max = 0;
    
for (int i=0;i<size;i++)
    
{
        
if(max<a[i])
            max
=a[i];
    }

    
return max;
}
posted @ 2008-10-24 10:41 longhr 阅读(2042) | 评论 (0)编辑 收藏
  2008年10月23日

Visual C++ 插件系列介绍

说到Visual C++的插件,大家可能只有想到Visual Assist吧。天真!行内开发的插件可只有这个!?下面介绍一下vc6.0的其他插件。

Visual Assist(强烈推荐)
网址:http://www.wholetomato.com/
功能:VA从5.0一直到现在的VAX,功能越来越强大,除了以前版本中的自动识别各种关键字,系统函数,成员变量,自动给出输入提示,自动更正大小写错误,自动标示错误等等以外,最新的版本中还在WorkSpace窗口中加入一个VA View,可以更方便的查找工程中的文件、类和变量。


WndTabs(强烈推荐)
网址:http://www.wndtabs.com/
功能:WndTabs主要是在编辑窗口中显示了所有已经打开的文件,在VC中能够更方便的操作这些文件,比如修改文件属性,copy文件路径、文件名等,并且还开放源代码,你要是愿意的话,可以添加自己很兴趣的功能。

LineCounter
网址: http://www.wndtabs.com/
功能:用来统计整个工程的代码行数,包括总行数、代码行数、注释行数、空行数等,并且对多个工程一起统计时,不会把相同的文件计算多次.

Spelly
网址:http://www.wndtabs.com/
功能:一个拼写检查的插件,可以对整个文件或所选部分进行拼写检查,支持C/C++/C#, VB, Fortran 和HTML。

SourceStyler C++
网址:http://www.sourcestyler.com/
功能:此插件是针对C++的一个格式化工具,可以针对自己的编码习惯,选择一种编码风格,也可以自己定义,而且定义非常详细,有表达式、指针、模板、类、枚举等十几种,肯定能满足你的需要。

Numega BoundsChecker(强烈推荐)
功能:是针对Visual C++6.0应用程序的最为全面的错误检测工具。BoundsChecker 能自动指出静态,堆栈内存错误和资源泄漏问题。BoundsChecker 能够校验最新的 Windows APIs,包括 ActiveX, DirectX, OLE/COM, ODBC等等。能够发现与 Windows 平台兼容性。

BCGControlBar Library
功能:非常好的一套应用于vc6的界面扩展类库,轻松的作出 vc2003 的界面。并且给了各种界面例子,如vc.net、outlook、更换皮肤等等。

Comment Wizard
网址:http://www.cppblog.com/fwxjj/
功能:Visual C++插件,提供了Visual C++源代码注解标准化与自动化功能。在它的帮助下,您可快速创建标头文件信息注解,文件中模块注解, C++处理方式,以及C语言功能与历史校正功能注解,等等。

String watch Microsoft Visual Studio add-in
网址:http://www.codeguru.com/cpp/v-s/devstudio_macros/debugging/article.php/c5989
功能:调试时查看字符串的。

Tabbar插件
网址:http://www.winmsg.com/cn/tabbar.htm
功能:显示多tab的