33,311
社区成员
发帖
与我相关
我的任务
分享
char * DayInfo = "20120924";
char day[4];
//0x8a也是一个字符。
#include <conio.h>
#include <stdlib.h>
#include <string.h>
int i;
int main() {
system("chcp 437 >NUL");
for (i=0;i<256;i++) {
if (i==0 || (7<=i && i<=13)) cprintf(".");
else cprintf("%c",i);
if (i%16==15) cprintf("\r\n");
}
return 0;
}
char * DayInfo = "20120924";
char day[4];
for (int i = 0; i != 4; i++)
{
sscanf_s(DayInfo + 2*i,"%2d",&day[i]);
}
char * DayInfo = "20120924";
char day[4];
int v;
for (int i = 0; i != 4; i++)
{
sscanf_s(DayInfo + 2*i,"%2d",&v);
day[i]=(char)v;
}
#include <stdio.h>
#include <emmintrin.h>
using namespace std;
int main()
{
char * DayInfo = "20120924";
char day[4];
__m128i x = _mm_loadl_epi64(reinterpret_cast<const __m128i*>(DayInfo));
__m128i y = _mm_set1_epi8(0x0f);
x = _mm_and_si128(x, y);
y = _mm_set1_epi8(0);
x = _mm_unpacklo_epi8(x, y);
y = _mm_set1_epi32(0x0001000a);
x = _mm_madd_epi16(x, y);
x = _mm_packs_epi32(x, x);
x = _mm_packs_epi16(x, x);
*reinterpret_cast<int*>(day) = _mm_cvtsi128_si32(x);
printf("%s --> 0x", DayInfo);
for (int i = 0; i < 4; ++i) printf("%.2x", day[i]);
printf("\n");
return 0;
}
char * DayInfo = "20120924";
char day[4];
for (int i = 0; i != 4; i++)
{
sscanf_s(DayInfo + 2*i,"%2d",&day[i]);
}