腾讯2016研发工程师笔试题(一)笔记
2016-09-01 16:43
281 查看
2.请找出下面程序中有哪些错误:
const在后,指针不能变;
const* ,指针指向为常量;
*const ,指针本身为常量。
(2)
(1)const int*p1:表示不能通过指针p1修改它指向的内存单元的值,但是p1本身可修改。
(2)int const*p2=&i:与p1相同,即不能修改p2指向的内存单元的值,但是可以修改p2使其指向其它的内存单元。这里p2指向了整型变量i
(3)p2=&j:修改p2,使其指向整型变量 j ,由(2)可知(3)没错。
(4)int *constp3=&i:p3本身是指向整型变量的常指针,即p3初始化后不能再指向其它的内存单元,但是可以修改p3指向的内存单元的值。这里p3指向了整型变量i。
(5)*p3=20:通过p3将变量i的值修改为2,由(4)可知(5)没错。
(6)*p2=30:通过p2修改它所指向的内存单元的值,由(2)可知(6)错误。
(7)p3=&j:修改p3,使其指向j,由(4)可知(7)错误
(3)遇到const修饰的时候,从右向左读 最容易区分
如: const int *p1;//则const 修饰的是int *p1 说明这个变量是不能变的,就是p1所指向的变量是常量变量
int const *p2 = &i; //const修饰的是 *p2(表示所指向的变量) 说明p2所指的变量不能改变,也就是 指向常量变量。
int *const p3 = &i; //const修饰的是 p3 说明指针变量的值不能改变,也就是不能让p3指针再指向其他
3.以下代码输出什么____.
&a表示一个指向大小为5数组的指针,那么&a+1就是表示一个指向大小为5的下一个数组的指针,也就是数组a最后一个元素的下一个位置,那么int*p=(int*)(&a+1)进行强制类型转换,将指向数组的指针转换为指向第二个数组中首元素的指针,所以p-1则是指向第一个数组中最后一个元素的指针,所以输出是5
6.linux下,指定文件file1为所有用户可读,可写,可执行,执行命令:___1__。修改file1的拥有者为test,拥有组为user,执行命令:___2__。
答案:chmod
777,chown test
解析:
sizeof(testArray[0]) 是 testArray[0]的大小 4;
所以 sizeof(testArray)/sizeof(testArray[0]) = 8
const在后,指针不能变;
const* ,指针指向为常量;
*const ,指针本身为常量。
(2)
(1)const int*p1:表示不能通过指针p1修改它指向的内存单元的值,但是p1本身可修改。
(2)int const*p2=&i:与p1相同,即不能修改p2指向的内存单元的值,但是可以修改p2使其指向其它的内存单元。这里p2指向了整型变量i
(3)p2=&j:修改p2,使其指向整型变量 j ,由(2)可知(3)没错。
(4)int *constp3=&i:p3本身是指向整型变量的常指针,即p3初始化后不能再指向其它的内存单元,但是可以修改p3指向的内存单元的值。这里p3指向了整型变量i。
(5)*p3=20:通过p3将变量i的值修改为2,由(4)可知(5)没错。
(6)*p2=30:通过p2修改它所指向的内存单元的值,由(2)可知(6)错误。
(7)p3=&j:修改p3,使其指向j,由(4)可知(7)错误
(3)遇到const修饰的时候,从右向左读 最容易区分
如: const int *p1;//则const 修饰的是int *p1 说明这个变量是不能变的,就是p1所指向的变量是常量变量
int const *p2 = &i; //const修饰的是 *p2(表示所指向的变量) 说明p2所指的变量不能改变,也就是 指向常量变量。
int *const p3 = &i; //const修饰的是 p3 说明指针变量的值不能改变,也就是不能让p3指针再指向其他
3.以下代码输出什么____.
&a表示一个指向大小为5数组的指针,那么&a+1就是表示一个指向大小为5的下一个数组的指针,也就是数组a最后一个元素的下一个位置,那么int*p=(int*)(&a+1)进行强制类型转换,将指向数组的指针转换为指向第二个数组中首元素的指针,所以p-1则是指向第一个数组中最后一个元素的指针,所以输出是5
6.linux下,指定文件file1为所有用户可读,可写,可执行,执行命令:___1__。修改file1的拥有者为test,拥有组为user,执行命令:___2__。
答案:chmod
777,chown test
解析:
sizeof(testArray[0]) 是 testArray[0]的大小 4;
所以 sizeof(testArray)/sizeof(testArray[0]) = 8
相关文章推荐
- 对于定义"int *p",下列哪些说明可能是正确的?----腾讯2016研发工程师在线模拟笔试题
- 某二叉树的先根遍历序列和后根遍历序列正好相反,则该二叉树具有的特征是()----腾讯2016研发工程师在线模拟笔试题
- 以下涉及到内存管理的代码段中,有错误的是:----腾讯2016研发工程师在线模拟笔试题
- TCP链接中主动断开链接netstat观察可能出现的状态流转是:----腾讯2016研发工程师在线模拟笔试题
- 关于多线程和多进程编程,下面描述正确的是():----腾讯2016研发工程师笔试题(一)
- 以下不属于tcp连接断开的状态是?----腾讯2016研发工程师笔试题
- 腾讯2016研发工程师笔试题(三)
- 在C++面向对象编程语言中,以下关于接口的阐述不正确的是:----腾讯2016研发工程师笔试题(一)
- n个顶点,m条边的全连通图,至少去掉____边才能构成一棵树?----腾讯2016研发工程师笔试题(一)
- ip地址10.1.8.0/24和10.1.9.0/24,下列哪个是正确的汇总网段:----腾讯2016研发工程师笔试题(一)
- 线性表的长度为10,在最坏情况下,冒泡排序需要比较次数为()----腾讯2016研发工程师在线模拟笔试题
- 二维数组X按行顺序存储,其中每个元素占1个存储单元。若X[4][4]的存储地址为Oxf8b82140,X[9][9]的存储地址为Oxf8b8221c,则X----腾讯2016研发工程师在线模拟笔试题
- 关于红黑树和AVL树,以下哪种说法不正确?----腾讯2016研发工程师在线模拟笔试题
- 错题集之腾讯2016研发工程师笔试题(三)
- 有36辆自动赛车和6条跑道,没有计时器的前提下,最少用几次比赛可以筛选出最快的三辆赛车?----腾讯2016研发工程师在线模拟笔试题
- 在linux编程中,以下哪个TCP的套接字选项与nagle算法的开启和关闭有关?----腾讯2016研发工程师在线模拟笔试题
- win32系统里,下面几个sizeof的运行结果是()----腾讯2016研发工程师在线模拟笔试题
- 下面关于ICMP协议的描述中,正确的是()----腾讯2016研发工程师笔试题
- 默认复制构造函数 bitwise 语义 delete 多次----腾讯2016研发工程师笔试题(一)
- 哪些设计模式是降低资源使用率:----腾讯2016研发工程师笔试题(一)