第2题地址:https://fun.coolshell.cn/81648.html
感觉和一般键盘的布局不太一样,将下面的内容用正常的键盘的键位打出来是什么?
还是用JavaScript写个转换函数吧……
// 注意“\”是转义符,字符串中要用两个“\\”表示
var code = "macb() ? lpcbyu(&gbcq/_\\021%ocq\\012\\0_=w(gbcq)/_dak._=}_ugb_[0q60)s+";
var table = {
"[" : "-",
"{" : "_",
"]" : "=",
"}" : "+",
"'" : "q",
"\"" : "Q",
"," : "w",
"<" : "W",
"." : "e",
">" : "E",
"p" : "r",
"P" : "R",
"y" : "t",
"Y" : "T",
"f" : "y",
"F" : "Y",
"g" : "u",
"G" : "U",
"c" : "i",
"C" : "I",
"r" : "o",
"R" : "O",
"l" : "p",
"L" : "P",
"/" : "[",
"?" : "{",
"=" : "]",
"+" : "}",
"o" : "s",
"O" : "S",
"e" : "d",
"E" : "D",
"u" : "f",
"U" : "F",
"i" : "g",
"I" : "G",
"d" : "h",
"D" : "H",
"h" : "j",
"H" : "J",
"t" : "k",
"T" : "K",
"n" : "l",
"N" : "L",
"s" : ";",
"S" : ":",
"-" : "'",
"_" : "\"",
";" : "z",
":" : "Z",
"q" : "x",
"Q" : "X",
"j" : "c",
"J" : "C",
"k" : "v",
"K" : "V",
"x" : "b",
"X" : "B",
"b" : "n",
"B" : "N",
"w" : ",",
"W" : "<",
"v" : ".",
"V" : ">",
"z" : "/",
"Z" : "?",
};
var answer = "";
for (var i = 0; i < code.length; ++i) {
var target = code[i];
if (table[code[i]]) {
target = table[code[i]];
}
// console.log(code[i] + ":" + target + ":" + answer);
answer += target;
}
console.log(answer);
运行结果还是一串代码,目测是C语言,跑一下。
main() { printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);}
好吧……要搭建环境……
先下载一个Cygwin,建议添加镜像地址http://mirrors.163.com,安装后进到bin目录。
新建文件main.c,将上面的代码复制进去。
在终端窗口编译、并执行代码。
gcc main.c -o main
main
终端输出unix,得到第3题地址:https://fun.coolshell.cn/unix.html
收获:想了解计算机底层,怎么能不会C语言?结果这段代码啥意思?呵呵……