C语言\01932\01\12\09的意思是什么?
应该这样看:
所有的ASCII码都可以用"\"加数字(一般是八进制)来表示。而C语言中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符。
1)"\"后面如果跟了三位八进制数字就将\ddd作为一个字符;
2)如果只跟了一个八进制数字就将\d作为一个字符;
3)如果跟了两个字符就将\dd作为一个字符。
因此对于"\01932\01\12\09",依次往后看,第一个\后面有019,9不是8进制数,因此\01作为一个字符,在内存中存放的字节的值就是1,然后9 3 2分别是一个字符,第二个\后面有01,因此\01作为一个字符,第三个\后面是12,\12作为一个字符,第四个\后面是09,9不是8进制数,\0作为一个字符,由于\0是结束符,后面的9已不算是该字符串的内容,因此共有6个字符,分别为\01, 9, 3, 2, \01, \12。