April 9, 2009
Google 在 Twitter 上的二进制问候是什么
第一眼看到 Google 在 Twitter 上用二进制向人们打招呼的时候,就感觉应该说的是一句话,只是没时间去搞清楚是什么。正好最近实在无聊地厉害,为了避免生命进一步浪费在如此阳光明媚狗熊撒欢的季节,就写了几行代码看看 Google 到底说了什么。
#include <string.h>
#include <malloc.h>
#include <memory.h>
char strchar2char(char buf[]);
void parse(const char* src, char* dst);
int main(int argc, char* argv[])
{
const char* src = "01100110 01100101 01100101 01101100 01101001 01101110 01100111 00100000 01101100 01110101 01100011 01101011 01111001 00001010";
size_t len_dst = (strlen(src) + 1) / 9;
char* dst = (char*)malloc(len_dst + 1);
memset(dst, 0, len_dst + 1);
parse(src, dst);
printf("src: %s\ndst: %s\n", src, dst);
free(dst);
return 0;
}
char strchar2char(char buf[])
{
unsigned char mask = 0x80, ret = 0, i;
for (i = 0; i <8; i++)
{
if ('1' == buf[i])
ret |= mask;
mask>>= 1;
}
return ret;
}
void parse(const char* src, char* dst)
{
char buf[8];
int i;
while (*src)
{
if (' ' == *src)
src++;
for (i = 0; i <8; i++)
buf[i] = src[i];
*dst = strchar2char(buf);
src += 8;
dst++;
}
}
答案揭晓:feeling lucky

是什么?
@沿阶草 呵呵,答案其实已经写在本文中了,用心找找。
晕死哦,留言之后Ctrl+f了以下,发现居然是白色文字放在了那里 ~~~
@胡子
答案揭晓:feeling lucky
要擅用ctrl+a哈~
哈哈,C++啊
哈哈,C++啊