miscellaneous13


Borland C++ Builder dla początkujących Obliczanie czasu działania kodu Czasami przydaje się nam policzyć jak szybko wykonuje się dany kod lub po prostu zliczyć czas do innego użytku, znam trzy sposoby na to, różnią się one dokładnością przy podawaniu różnicy czasów: I - dokładność do 1 sekundy Unit1.cpp void __fastcall TForm1::Button1Click(TObject *Sender) {    TDateTime czas, czasStart, czasEnd;    czasStart = Now();    for (long int i = 0; i <= 100000000; i++);    czasEnd = Now();    czas = czasEnd - czasStart;    Label1->Caption = czas; } II - sposób dokładność do 0,001 sekundy: Unit1.cpp void __fastcall TForm1::Button3Click(TObject *Sender) {    float Start = GetTickCount();    for (long int i = 0; i <= 100000000; i++);    float End = GetTickCount();    Label1->Caption = FloatToStr((End - Start) / 1000) + " s."; } III sposób - dokładność do 0,0000000000001 s Unit1.cpp void __fastcall TForm1::Button2Click(TObject *Sender) {    LARGE_INTEGER lpFrequency;    LARGE_INTEGER lpPerformanceCountStart, lpPerformanceCountEnd;    if (QueryPerformanceFrequency(&lpFrequency) != 0)    {       QueryPerformanceCounter(&lpPerformanceCountStart);       for (long int i = 0; i <= 100000000; i++);       QueryPerformanceCounter(&lpPerformanceCountEnd);       double Frequency = lpFrequency.QuadPart;       double End = lpPerformanceCountEnd.QuadPart;       double Start = lpPerformanceCountStart.QuadPart;       Label1->Caption = FloatToStr((End - Start) / Frequency) + " s.";    } }

Wyszukiwarka

Podobne podstrony:
miscellaneous19
miscellaneous12
Linux IPCHAINS HOWTO Miscellaneous
Fading Suns Ships Miscellaneous
Miscellaneous Commands
miscellaneous18
miscellaneous02
miscellaneous03
miscellaneous16
Miscellaneous Options
miscellaneous15
Łysiak Waldemar Miscellanea
miscellaneous07
Miscellaneous Programs
miscellaneous01
miscellaneous04

więcej podobnych podstron