stringstream 与 sprintf

xiaoxiao2021-02-28  38

#include "stdafx.h" #include <sstream> #include <iostream> #include <time.h> using namespace std; string buildKeyStram(const string &market, const string &stockcode, string direction) {     stringstream sskey;     sskey << market << "_" << stockcode << "_" << direction;     return sskey.str(); } string buildKeyString1(const string &market, const string &stockcode, string direction) {     string sskey;     sskey = market + "_" + stockcode + "_" + direction;     return sskey; } string buildKeyString2(const string &market, const string &stockcode, string direction) {     string sskey;     sskey += market;     sskey+= "_";     sskey+= stockcode;     sskey+= "_";     sskey+= direction;     return sskey; } string buildKeySprintf(const string &market, const string &stockcode, string direction) {     char buffer[128];     sprintf_s(buffer, "%s\_%s\_%d", market.c_str(), stockcode.c_str(), direction.c_str());     return buffer; } int _tmain(int argc, _TCHAR* argv[]) {     long i = 0;     time_t start,end;     time(&start);     while(i<10000000)     {         buildKeyStram("SH", "000002", "1");         ++i;      }      time(&end);      double cost=difftime(end,start);        printf("buildKeyStram cost Time:%f\n",cost);       i = 0;     time(&start);     while(i<10000000)     {         buildKeySprintf("SH", "000002", "1");         ++i;      }     time(&end);     cost=difftime(end,start);       printf("buildKeySprintf cost Time:%f\n",cost);       i = 0;     time(&start);     while(i<10000000)     {         buildKeyString1("SH", "000002", "1");         ++i;      }     time(&end);     cost=difftime(end,start);       printf("buildKeyString1 cost Time:%f\n",cost);       i = 0;     time(&start);     while(i<10000000)     {         buildKeyString2("SH", "000002", "1");         ++i;      }     time(&end);     cost=difftime(end,start);       printf("buildKeyString2 cost Time:%f\n",cost);       getchar(); }

win32 Release 下

buildKeyStram cost Time:34.000000 buildKeySprintf cost Time:11.000000 buildKeyString1 cost Time:6.000000 buildKeyString2 cost Time:3.000000

转载请注明原文地址: https://www.6miu.com/read-2622032.html

最新回复(0)