美文网首页
笔试题目1

笔试题目1

作者: 飞猪的浪漫 | 来源:发表于2021-09-01 00:17 被阅读0次

shared_ptr是一种智能指针,记录有多少个shared_ptrs共同指向一个对象,即引用计数。shared_ptr不能管理循环引用的对象,如果使用不当的话,会引起内存泄漏。(为了解决这个问题引入了弱指针 weak_ptr)

构造和析构相反进行,可以想象成构造从内到外构造(父类到子类),析构从外到内拆除(子类到父类)

父类先构造,然后子类构造,结束时,子类先析构,然后父类最后析构

某一基类有构造函数A(),析构函数~A(),其派生类B的构造函数析构函数分别为B(),~B()

开始时,先调用A(),再调用B(),结束时,先调用~B(),再调用~A()

各类函数中:构造函数、析构函数、拷贝初始化构造函数等是类的成员函数。

C语言系统中,如果int型数据占2个字节,则说明该系统是16位的系统,

此时double型数据占8个字节,long型数据占4个字节,unsigned int占2个字节,char

型数据占1个字节。

若要以写方式打开当前目录下文件abc:txt:::fopen("abc.txt","w");

假定一个类的构造函数为B(int x,int y){a=x--;b=x*y--;}。则执行B(3,5);语句后,a和b的值分别是

(3和10)

若有 int *p=(int *)malloc(sizeof(int));则向内存申请到内存空间存入整数123的语句为:

p 是 int 的指针类型,scanf 要求 %d 相应参数也是 int 的指针类型 scanf("%d",p);

scanf("%d",&p); &p 又取了一次 p 的地址,相当于指针的指针, scanf 尝试写入原本是指针的地址,导致 p 的值被改变(本应写入 p 指向的内存),后续解引用 *p 可能导致访问非法内存 产生运行时读内存错误。

scanf("%d",*p);  *p 解引用取值,是一个未初始化的乱值, scanf 会把该值当作地址,可能导致运行时写内存错误或写入不被期望的内存区域。

scanf("%d",**p); p 只是一次指针, **p 会编译错误。

如果cur强制被转化成字符类型的指针,那么加2,就是加2个字符的大小,即为c,如果cur是对象指针,那么加2的话,就指向第3个object类型的对象。

*(char*)((char *)(cur)+2),cur被强制转化为char*类型,然后+2,那么就是加两个字节,就是c。外面那个(char*)是为了转换为字符型指针与%c对应,本题可以不要,因为本来就是字符。

*(char*)(cur+2)),cur的类型是object*,那么cur+2就是加两个obect的大小,就是6,因此是g。同样,外面那个(char*)是为了转换为字符型指针与%c对应,本题可以不要,因为本来就是字符。

struct sk{ int a; float b; } data, *p=&data;

如果是指针指向结构体,就用   ->  (“形状像个箭头,表示指向,记为指针访问结构体成员的方式”)

结构体类型名访问结构体成员变量 用  .    成员访问运算符 

综上可以用 :   p-> a    或者   (*p).a   

char s[10];s="abcdefg";

s表示字符串首地址,所以不能被赋值iiiiiiiiiiiiiii

%*4s表示读取一个长度为四个字符的字符串,中间的*表示将读取到的字符串忽略,不赋给变量列表中的变量。

scanf("%2d%*4s%2d", &x, &y);

将输入的前两位给x,跳过中间的四个字符,将之后的两位给y。所以x=12,y=78.

*赋值禁止字符,跳过输入字段,不进行赋值;

%2d:2表示指定最大字段宽度,对输入数据按格式对2位整数作赋值;

字符"23456"不作赋值,故:x=12,y=78;

第一个 i++, ++i.

1.1 - i++,指的是先使用然后再增加,比如: int i = 1; int i_pp = i++: // i_pp = 1;

1.2 - ++i, 指的是先加然后再使用,比如:int i = 1; int pp_i = ++i; //pp_i = 2;

这两点清楚后,就会知道

switch(k> -i++)  等同于switch(k> -1) //k = 0,所以statement为true即为1。 

第二个,switch case。

当switch case没有break的时候,将会按照代码行数一一执行下去。

通过第一点,得到了switch(1),所以进入case 1,由于没有break,再进入case0,但是,i,已经在switch statement的时候更新了 ,也就是说这个时候的,i,已经是2了。

类成员默认为private的,struct成员默认为public.

类A1、A2和A3中的成员函数show1、show2和 show3都是public(公开的),因此,各个类都可以通过对象调用该成员函数,即选项A、B和C;又因为这个属于类的多继承关系,即A1(基类)-->A2--->A3,由于A3继承A2的继承方式是protected(受保护的),所以类A1中的show1函数在派生类A3中是 protected,因此,不能通过类A3的对象访问 类A1中的 show1,故D选项错。

include <file>  //在标准库及默认搜索目录中寻找将要 include 的文件 ;

include "file" //先在当前目录中搜索文件,然后再到默认搜索目录中搜寻。

shape *s1=&r;

shape &s2=r; 是对的。

class shape 

{public:  

 virtual intarea()=0;

};  

shape为抽象类,不可实例化

若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f

//在f函数定义的后面,其它的函数也是可以调用f函数的

若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数f

//正确

对于以上程序,编译时系统会提示出错信息:提示对f函数重复说明

//在C语言中变量或函数可以重复声明,但是不能重复定义

函数f无返回值,所以可用void将其类型定义为无值型

//正确

C++的容器有两种类型的容器:顺序容器和关联容器。

顺序容器:又称线性容器,将数据组织成有限线性集合,主要有:vector、list、deque等。

vector(向量)表示一段连续的内存地址,基于数组的实现,可以动态的增加或减少

list(链表)表示非连续的内存,基于链表实现。

deque(双端队列)与vector类似,但是对于首元素提供删除和插入的双向支持。

关联容器:主要有map和set(底层是红黑树–平衡排序二叉树)

map的元素是以key-value形式存在的,key是键值(键值不能重复),value是实值(可以重复),并以key值进行元素排序,查找

set的元素是单值(键值与实值相同)的,是唯一的,其以实值排序、查找元素。

multimap和multiset: 可以存放多个相同的key值。

STL各种容器和算法的sort和find函数对重载运算符的调用情况:

1、二叉树类型的容器的std::sort和std::find时都会调用operator < 。

2、线性类型(vector、list)容器std::sort算法时会调用operator <;使用std::find算法会调用operator ==。

线性容器(以vector为例)的重载运算符" < " 和" == "

二叉树类型的容器的sort和find都会调用operator &lt;

线性类型容器sort会调用operator &lt;

线性类型容器使用std::find会调用operator ==.

对于类与结构体等自定义类型数据的容器对象,重载运算符operator < 与operator ==有两种形式:一种是在类或结构体中直接以成员函数的形式定义;另一种就是在类外定义一个比较函数compare(),以函数指针(或函数对象)的形式作为函数参数传入(针对sort()排序函数)

相关文章

  • 笔试题目1

    shared_ptr是一种智能指针,记录有多少个shared_ptrs共同指向一个对象,即引用计数。shared_...

  • 某游戏彩票外企Java笔试题

    第一轮笔试 笔试形式:paper test题目难易程度:中等笔试时间:1个小时笔试语言:题目和答题全部用英文 1 ...

  • 笔试题目

    1 深信服笔试题2 这道题不难,但是考试的时候思路很乱,写的也很乱,也没通过测试用例,还好拍下来(突然想起来还开了...

  • 2021-04-16-竞技世界笔试回忆

    总体来说,竞技世界的笔试给了我不少好感,许多公司的笔试题目都是语法题,但竞技世界不是,竞技世界总体来说笔试题目更多...

  • 笔试题目记录

    32位机器上,以下结构的sizeof(P)为 /*考察结构体对齐和填充: 结构体每个成员相对于结构体首地址的偏移量...

  • vue笔试题目

    重要提示: vue-element-admin 项目:https://github.com/PanJiaChen/...

  • AX笔试题目

  • 笔试题目继续

    顺序表:随机访问;链表:顺序访问。 顺序表可以随机访问任意一个结点,而链表则不能。 具有n个结点的无向连通图至少有...

  • 笔试题目(续)

    邻接矩阵的优先遍历 考研好痛苦,情绪不稳定,快(快速排序)些(希尔排序)选(选择排序)一堆(堆排序)朋友来聊天吧,...

  • 信也科技面经

    2020.9.15投递2020.9.18笔试 七道主观题 3or4概率统计题目、1道编程填空题目、1道风控模型...

网友评论

      本文标题:笔试题目1

      本文链接:https://www.haomeiwen.com/subject/efetwltx.html