#pragma once#include "inf.hpp" #include <stdint.h> #include <string> #include <iostream> #include < sstream> #define Buffer_size 1048576std::string int2str (int32_t p_vint); std::string int2str_oss (int32_t p_vint); std::string int2str (int32_t p_vint) { char str[11] = {0}; int bits = 0, temp = 0; for (int i = 0; p_vint > 1; ++bits, ++i) { temp = p_vint; P_vint/=; Str[i] = Temp-p_vint * + 0x30; } for (int i = 0; i < BITS/2; i++) { str[i] ^= str[bits-1-i]; Str[bits-1-i] ^= str[i]; Str[i] ^= str[bits-1-i]; } Str[bits] = 0; return std::string (str);} std::string Int2str_oss (int32_t p_vint) { std::ostringstream oss; OSS << P_vint; return Oss.str ();}
Running Time:
#include <windows.h>int main () { double time = 0; Double counts = 0; Large_integer Nfreq; Large_integer Nbegintime; Large_integer Nendtime; QueryPerformanceFrequency (&nfreq); QueryPerformanceCounter (&nbegintime);//Start Timing //encode ("D:/bgm_.txt", "D:/bgm2.txt"); Test //for (int i = 0; i < 1000000; i++) // int2str (i); 5.33s //for (int i = 0; i < 1000000; i++) // Int2str_oss (i); 23.53s QueryPerformanceCounter (&nendtime);//Stop timer time = (double) (Nendtime.quadpart- Nbegintime.quadpart)/(double) Nfreq.quadpart; Std::cout << "Running time:" << time * + << "MS" << Std::endl; return 0;
[C + +] Running time and Integer to String