设语句定义char a[ 80 ]= " 0123\0789 "; ,则sizeof(a)和strlen(a)的值分别为()
A.80和9
B.80和7
C.80和5
D.80和6
正确答案是 A
\078是一个八进制数,\0不可能是空字符,后接三位数表示一个八进制,但是本题\0接后三位的第三位是8,所以本题的全部字符分别为:
Aaaaaa
还有这操作终究还是太年轻了
前后有两个空格,\后面为0789,因为八进制不可能有8,所以转移字符为\07,如果把8改成7,那么就应该是\077。如果把7改成8,那么转移字符就是\0,这才是结束符。
C语言中\0结束符 不算在strlen范围内
#include<iostream> using namespace std; int main() { char a[80]="0123\0789"; cout<< sizeof(a)<<endl; cout<< strlen(a)<<endl; system("pause");
八进制数的转义
多线程中sleep()和wait()方法的区别
叉树前序遍历的递归和非递归实现?
某公园内有个奇怪的摊主小周,他只在星期一、星期二、星期三、星期五和星期六工作,而且他只出售4种商品:玩具汽车、充气气球、橡皮泥和遥控飞机。<
微信公众号中服务号和订阅号合二为一,你怎么看?
Aaaaaa
还有这操作终究还是太年轻了
前后有两个空格,\后面为0789,因为八进制不可能有8,所以转移字符为\07,如果把8改成7,那么就应该是\077。如果把7改成8,那么转移字符就是\0,这才是结束符。
C语言中\0结束符 不算在strlen范围内
#include<iostream>
using namespace std;
int main()
{
char a[80]="0123\0789";
cout<< sizeof(a)<<endl;
cout<< strlen(a)<<endl;
system("pause");
八进制数的转义