久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

delphi 2007 vs E語言 vs C#運(yùn)行速度 - Delphi編程

 nxhujiee 2010-03-09

這是用E語言編譯的,因?yàn)槲矣玫?.05試用版本,沒有辦法生成EXE文件,,只能在E語言環(huán)境 下運(yùn)行

這是E語言的代碼:

.版本 2

.程序集 窗口程序集1

.子程序 _按鈕1_被單擊
.局部變量 時(shí)間1, 長整數(shù)型
.局部變量 時(shí)間2, 長整數(shù)型
.局部變量 結(jié)果, 整數(shù)型
.局部變量 到文本, 整數(shù)型

時(shí)間1 = 取啟動(dòng)時(shí)間 ()
結(jié)果 = SumTimes (到數(shù)值 (編輯框1.內(nèi)容))
時(shí)間2 = 取啟動(dòng)時(shí)間 () - 時(shí)間1

編輯框2.內(nèi)容 = 編輯框2.內(nèi)容 + 到文本 (結(jié)果) + “次累加運(yùn)算耗費(fèi):” + 到文本 (時(shí)間2) + “毫秒” + #換行符


.子程序 SumTimes, 長整數(shù)型
.參數(shù) timer, 長整數(shù)型
.局部變量 結(jié)果, 長整數(shù)型


結(jié)果 = 0
.計(jì)次循環(huán)首 (timer, )
    結(jié)果 = 結(jié)果 + 1
.計(jì)次循環(huán)尾 ()
返回 (結(jié)果)

 

這是delphi 2007編譯的EXE文件,可以看出差好多了

這是delphi的代碼:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    btnAdd: TButton;
    Label1: TLabel;
    Memo1: TMemo;
    procedure btnAddClick(Sender: TObject);
  private
    { Private declarations }
    function SumTimes(i:Integer):string;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btnAddClick(Sender: TObject);
var
  dEnd:real;
  dStart:Integer;
  str:string;
begin
  dStart:=GetTickCount;
  str:=SumTimes(strToInt(trim(Edit1.Text)));
  dEnd:=GetTickCount-dStart;
  memo1.Lines.Add(edit1.Text+'次累加運(yùn)算耗費(fèi):'+floattostr(dEnd)+' 毫秒');
end;

function TForm1.SumTimes(i: Integer):string;
var j,m:integer;

begin
  for j := 0 to i - 1 do
  begin
    m:=m+1;
  end;
  result:=inttostr(m);
end;

end.

 

這是我用C# 2005的測(cè)試程序,,大家可以測(cè)試下,。

正在裝載數(shù)據(jù)……

下面是C#的代碼:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace cSharpTest
{
    public partial class Form1 : Form
    {

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //System.DateTime currentTime = new System.DateTime();
            int iStart, iEnd;
            long st;
            iStart = Environment.TickCount;
            st = SumTimer(long.Parse(textBox1.Text));
            //System.DateTime currentTime1 = new System.DateTime();

            iEnd = Environment.TickCount - iStart;

            rtb.AppendText(textBox1.Text + "次累加運(yùn)算耗費(fèi):" + iEnd.ToString()+" 毫秒\n");
           
        }
        private long SumTimer(long s)
        {
            long m=0;
            for (long i = 1; i <= s; i++)
            {
                m += 1;
            }
           
            return m;
        }
    }
}

 

結(jié)論:這幾個(gè)編譯器,可以看出效率最高的是直接編譯成機(jī)器碼的delphi,,他所編譯出的代碼大?。?18K)。但是C#和E語言都不是直接編譯成機(jī)器碼,,所以沒有什么可比性,,但是E語言的效率比C#高確實(shí)有點(diǎn)驚喜!

測(cè)試文件:

c#        編譯的文件:點(diǎn)次下載 http://dl2.csdn.net/down4/20070628/28050252199.exe 

delphi 編譯的文件:點(diǎn)次下載  http://http://dl2.csdn.net/down4/20070628/28050658854.exe




本文來源:http://blog.csdn.net/wjames2000/archive/2007/06/28/1669668.aspx

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多