发布网友 发布时间:2023-07-16 06:42
共1个回答
热心网友 时间:2024-12-05 23:51
显然“笑脸”不是printf("二进制输出%d",val)打出来的,而是printf(":%s",num)打出来的。因为你由语句*(num+i)=val1放入num数组的是二进制“值”而不是这“值”的ASCII码,可是后面的printf(":%s",num)却把num当作字符串来输出。二进制不是0便是1,而0作为字符是什么也不输出的,1呢?刚好就是那个“笑脸”。解决的办法是将 *(num+i)=val1改成 *(num+i)=val1+‘0’,让num中全是ASCII码,问题就迎刃而解了……