执行次数不是7次吗 为什么是5次

下面程序段中,for循环的执行次数是( )。

char *s="\ta\018bc" ;

for(;s!='\0' ;s++) printf("") ;

for循环的条件是:s!='\0' 还是*s!='\0' 。如果是前者的话,是死循环,执行无数次;如果是后者的话,执行6次,因为:
s[0]='\t',
s[1]='a',
s[2]='\x1',
s[3]='8',
s[4]='b',
s[5]='c',
s[6]='\0',

这个字符串\ta\018bc 其中有两个转义字符\t和\01,这样算上字符串结束符\0就有6个, 因此循环次数为6

6次,因为该字符串中总共有6个字符:
'\t', 'a', '\01'(这个字符是用8进制表示的,注意不可能是'108'的,8进制最大的数字是7), '8', 'b', 'c'

如有帮助,还请帮忙点下采纳!感谢!