最近面试的一些题
2012-07-04 23:48
274 查看
1.数据库回滚操作 sql语句
2.
输出下面程序的运行结果
View Code
共用体表示几个变量共用一个内存位置,在不同的时间保存不同的数据类型和不同长度的变量。在union中,所有的共用体成员共用一个空间,并且同一时间只能储存其中一个成员变量的值。
看一下对应的汇编代码,发现第25,26行都是对[ebp-0Ch] 进行赋值,即下面一个是进行重新赋值!
3. 输出下面的结果
4.下面这个程序编译有没有问题,如果有,请指出来!
2.
输出下面程序的运行结果
View Code
#include <stdio.h> int main() { struct aa { int a; int b; }aa; union bb { int a; int b; }bb; aa.a = 1; aa.b = 2; bb.a= 3; bb.b = 5; printf("%d %d\n",aa.a,aa.b); printf("%d %d\n",bb.a,bb.b); return 0; }
共用体表示几个变量共用一个内存位置,在不同的时间保存不同的数据类型和不同长度的变量。在union中,所有的共用体成员共用一个空间,并且同一时间只能储存其中一个成员变量的值。
看一下对应的汇编代码,发现第25,26行都是对[ebp-0Ch] 进行赋值,即下面一个是进行重新赋值!
22: aa.a = 1; 00401028 mov dword ptr [ebp-8],1 23: aa.b = 2; 0040102F mov dword ptr [ebp-4],2 24: 25: bb.a= 1; 00401036 mov dword ptr [ebp-0Ch],1 26: bb.b = 51; 0040103D mov dword ptr [ebp-0Ch],33h 27: 28: 29: printf("%d %d\n",aa.a,aa.b);
3. 输出下面的结果
#include <stdio.h> int main() { int a[] = {1,2,3,4,5,6,7,8}; char * p = (char *)a; p = p +4; printf("%d %d",*(a+4),*(int *)p); return 0; }
4.下面这个程序编译有没有问题,如果有,请指出来!
#include <iostream> using namespace std; class A { public : virtual int f() { cout<<"1"<<endl; return 1; } void g() { f(); } }; class B :public A { public: virtual int f() { cout<<"2"<<endl; return 2; } }; int main() { B o; o.g(); }
相关文章推荐
- 最近招聘面试的一些感悟
- 从.net转型,聊聊最近一些面试,薪资和想法
- java 3年,最近在天津和北京面试的一些心得体会,简单zookeeper dubbo spring搭建(基础推荐)
- 最近面试C++程序员的一些题目
- 最近面试的一些经验和总结,希望给跳槽的朋友一些借鉴
- 最近面试的一些感想
- 总结一下最近面试遇到的一些问题吧
- 最近在面试 总结一些面试题 以供自己以后面试用到
- 最近面试的一些事
- 最近的一些面试总结-2018-神州数码
- 总结下最近面试iOS的一些情况
- 最近的一些面试感悟
- 最近的一些面试
- 最近面试的一些题目汇总
- 【最近面试遇到的一些问题】线程安全-单例模式[转]
- 【最近面试遇到的一些问题】Java中取小数点后两位(四种方法)
- 最近看的一些关于数据结构和C++的面试知识点总结
- 【最近面试遇到的一些问题】java中list、set和map 的区别
- 最近做的一些比较基础的笔试面试题目
- 最近面试的一些面试题