0

我在Ask Ubuntu上帮助某人,将 Wiimote 连接到 Ubuntu 应该是一个简单的问题,但是我们遇到了驱动程序中的错误。

驱动程序会为设备请求蓝牙pairing code,而用户没有。

用户在wiibrew上找到了一篇文章,解释了如何用一些 C 代码提取代码。

他们给了

char pin[6];
pin[0] = 0x6D;
pin[1] = 0x7E;
pin[2] = 0x3B;
pin[3] = 0x35;
pin[4] = 0x1E;
pin[5] = 0x00; 

所以。用户制作了他们认为有效的 C 文件

#include <stdio.h> 

int main(void) 

{
 char pin[6]; 
 pin[0] = 0x41; 
 pin[1] = 0x7D; 
 pin[2] = 0x5D;  
 pin[3] = 0x8A;
 pin[4] = 0xD2;
 pin[5] = 0x40; 

 printf("the password is:\n"); printf("%s \n", pin ); 

}

代码编译得很好,没有错误,但是它应该产生一个 6 位数的密码,但只显示看起来像无意义的字符,

 A}]��@

因为我不是程序员,所以我不明白这个输出有什么问题,为什么会给出这个结果,我们如何使用这个得到实际的配对代码?

4

1 回答 1

1

它打印正常0x8A0xD2不是有效的 ASCII 字符。Ascii 使用十六进制值 0x00-0x7F。

看这里

于 2015-12-08T16:39:44.443 回答