Sign-up....

大家来瞧瞧!!!

#include<stdio.h>

main()

{

char x; int i;

for(i=0;i<=255;i++)

{x=i;

if(i%7==0) printf("\n");

printf("\t%c=%d",x,x);}

}

为什么输出的时候对不齐啊,就是当ASCII代码的值等于13的时候???

[156 byte] By [msdn] at [2007-8-14 12:47:55]
# 1 Re: 大家来瞧瞧!!!

ASCII代码的值等于13的字符是回车,

ASCII代码的值等于10的字符是换行,

可能是这个原因吧

useresu at 2005-4-28 10:56:11 >
# 2 Re: 大家来瞧瞧!!!

运行结果我看了,

就是ASCII代码的值等于10时换行了,

然后打了11,12的字符,13是回车符,所以回到行首了,

useresu at 2005-4-28 10:58:46 >
# 3 Re: 大家来瞧瞧!!!

同意楼上诸位!!~

syd1207 at 2005-4-28 11:02:47 >
# 4 Re: 大家来瞧瞧!!!

因为ASCII表中的字符除了可显示字符外,还有一部分是非显示字符。通常这些非显示字符的输出被解释为实现某一功能。还应该注意的是,后128个字符的解释跟使用的语言系统有关。

whyglinux at 2005-4-28 11:06:52 >
# 5 Re: 大家来瞧瞧!!!

那怎么后面的数字有些是负数啊???

xinteng at 2005-4-29 14:36:01 >
# 6 Re: 大家来瞧瞧!!!

学习帮顶

Sk123 at 2005-4-29 16:17:49 >
# 7 Re: 大家来瞧瞧!!!

>> 那怎么后面的数字有些是负数啊???

这说明你的 char 其实是 signed char,将 char x; 改为 unsigned char x; 就可以了。

whyglinux at 2005-5-2 15:00:59 >

C/C++

All Classified