코드 비교
2817 단어 코드
#include "stdafx.h"
#include <string>
#include <Windows.h>
#include <iostream>
#include <time.h>
#include <assert.h>
using namespace std;
inline char convert1(string &value, int index)
{
char data[2];
data[0] = value[index];
data[1] = value[index+1];
int x = 0;
sscanf(data, "%X", &x);
char ch = x;
return ch;
}
inline char convert2(string &value, int index)
{
const char *pData = value.c_str() + index;
int num = 0;
if (*pData >= '0' && *pData <= '9')
{
num = (*pData - '0') << 4;
}
else if (*pData >= 'a' && *pData <= 'f')
{
num = (*pData - 'a' + 10) << 4;
}
else if (*pData >= 'A' && *pData <= 'F')
{
num = (*pData - 'A' + 10) << 4;
}
pData++;
if (*pData >= '0' && *pData <= '9')
{
num += (*pData - '0');
}
else if (*pData >= 'a' && *pData <= 'f')
{
num += (*pData - 'a' + 10);
}
else if (*pData >= 'A' && *pData <= 'F')
{
num += (*pData - 'A' + 10);
}
char ch = num;
return ch;
}
int _tmain(int argc, _TCHAR* argv[])
{
#ifndef test2
const int signNum = 22;
char sign[signNum] = {'0', '1','2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'A', 'B', 'C', 'D', 'E', 'F'};
srand ( time(NULL) );
int num1,num2;
const int valueLen = 1000;
for (int j = 0; j < 1000; ++j)
{
string value;
for (int i = 0; i< valueLen/2; i++)
{
num1 = rand() % signNum;
num2 = rand() % signNum;
assert(num1 >=0 && num1 < signNum);
assert(num2 >=0 && num2 < signNum);
value += sign[num1];
value += sign[num2];
}
for (int k = 0; k < valueLen; k+=2)
{
if (convert1(value, k) != convert2(value, k))
{
cout << "!=" << endl;
cout << value[k] << "\t"<< value[k+1] << endl;
return 0;
}
}
}
#endif
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
vue 단일 페이지에 여러 개의 echarts 도표가 있을 때의 공용 코드 쓰기html에서: 데이터 처리는 말할 필요가 없다.응, 직접 그림을 그려: 공통 섹션: 이 페이지를 떠날 때 파괴: 추가 정보: Vue + Echarts 차트 표시 및 동적 렌더링 준비 작업 echarts 의존 설치 n...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.