zhaopengfei 发表于 2014-3-23 23:26:16

经典100例的问题

题目:输出特殊图案,请在c环境中运行,看一看,Very Beautiful!
1.程序分析:字符共有256个。不同字符,图形不一样。      
2.程序源代码:
#include “stdio.h“
main()
{
char a=176,b=219;
printf(“%c%c%c%c%c\n“,b,a,a,a,b);
printf(“%c%c%c%c%c\n“,a,b,a,b,a);
printf(“%c%c%c%c%c\n“,a,a,b,a,a);
printf(“%c%c%c%c%c\n“,a,b,a,b,a);
printf(“%c%c%c%c%c\n“,b,a,a,a,b);}
我运行的环境是vc++
运行结果是这个:怎么回事啊??原因是什么 ?

杨学子 发表于 2014-3-24 11:13:01

同求结果

machimilk 发表于 2014-3-24 16:13:24

你查一下ascii码表

sidfate 发表于 2014-3-24 19:54:37

可能是ASCII后128位的某些字符会跟Unicode相冲突,而vc编译出来的是unicode的编码

hnsdchy 发表于 2014-3-24 20:58:11

学习学习.....

欣欣celin 发表于 2014-3-24 22:09:40

sidfate 发表于 2014-3-24 19:54 static/image/common/back.gif
可能是ASCII后128位的某些字符会跟Unicode相冲突,而vc编译出来的是unicode的编码

偶也这么看,
事关试将A,B分别赋值小于128的任意值,都能正确打印
而查得176和219都为ASCII扩展集符号

zhaopengfei 发表于 2014-3-24 22:23:00

sidfate 发表于 2014-3-24 19:54 static/image/common/back.gif
可能是ASCII后128位的某些字符会跟Unicode相冲突,而vc编译出来的是unicode的编码

有什么解决的办法么??

zhaopengfei 发表于 2014-3-24 22:23:33

machimilk 发表于 2014-3-24 16:13 static/image/common/back.gif
你查一下ascii码表

查不出来什么东西的。

sidfate 发表于 2014-3-25 18:34:41

输出的ascii码被cmd以GBK编码输出了,在cmd里面输入
mode con cp select=437选择英文编码再运行就可以正常显示了
用完了使用mode con cp select=936改回简体中文

sidfate 发表于 2014-3-25 18:35:31

先编译出执行文件,然后直接运行cmd,在cmd里面用上述命令设置代码页,然后直接在cmd里面运行程序即可。我以前在百度上看过,又去搜了一下,上面是原文

steven20133 发表于 2014-3-25 19:49:28

支持支持支持

zhaopengfei 发表于 2014-3-25 22:09:49

sidfate 发表于 2014-3-25 18:35 static/image/common/back.gif
先编译出执行文件,然后直接运行cmd,在cmd里面用上述命令设置代码页,然后直接在cmd里面运行程序即可。我以 ...

好嘛好嘛,虽然还是没明白到底怎么搞,但是谢谢你啦亲

尘陌缘 发表于 2014-4-7 14:25:18

000不懂{:2_36:}

最好是明天 发表于 2014-4-7 15:24:48

学习。。。。。。。。。

硫酸亚铜 发表于 2014-4-7 16:11:43

没有结尾字符'\0'
页: [1]
查看完整版本: 经典100例的问题