Re: [閒聊] 不使用if的寫法
※ 引述《azureblaze (AzureBlaze)》之銘言:
: unsigned int u = 0x6f6e + (~-!!(i-1)&0x72F60B);
: printf("%s\n",(char*)&u);
: 限定little endian,big endian改一下就行就是了...
: 沒有branch,沒有pointer indirection
: 只是我不確定那串bitwise operation會不會比較快
變化一下
uint64_t yesno = 0x0073657900006f6e >> ((i == 1) << 5);
printf ( "%s\n", (char*) &yesno );
operator個數 6個 -> 3個
※ 編輯: neutrino 來自: 218.211.32.194 (01/11 11:16)
→
01/11 11:32, , 1F
01/11 11:32, 1F
推
01/11 17:14, , 2F
01/11 17:14, 2F
推
01/11 17:34, , 3F
01/11 17:34, 3F
討論串 (同標題文章)
完整討論串 (本文為第 17 之 18 篇):
閒聊
5
9