[求助]来看看简单的题目
#include<stdio.h>
main()
{
char *s = "\ta\018bc";
for(;*s!='\0';s++)
printf("*");
}
请问这能打出多少个*,为什么呢? 谢谢
----------------解决方案--------------------------------------------------------
6个
\t a \01 8 b c
----------------解决方案--------------------------------------------------------
如果 \01后面是小于8的话 就是5个*
这么说你明白了吧
----------------解决方案--------------------------------------------------------
#include<stdio.h>
main( )
{
char *s="\ta\018bc";
for(;*s!='\0';s++)
{
printf("%c,",*s); /*用这个语句看看for进行了几次循环不行吗?*/
}
}
是输出了六个星!
----------------解决方案--------------------------------------------------------
发的慢了!
----------------解决方案--------------------------------------------------------
以下是引用SunShining在2006-5-18 18:35:00的发言:
如果 \01后面是小于8的话 就是5个*
这么说你明白了吧
如果小于8, \010~\017表示一个整体为8进制的数. 所以是5个.
\t 表示一个Tab.
a表示一个a
\01表示一个8进制ASCII的001
8表示8
b表示b
c表示c
----------------解决方案--------------------------------------------------------
谢谢大家~~我明白了!~~~
----------------解决方案--------------------------------------------------------