Pome资料库
Pome 切换暗/亮/自动模式 切换暗/亮/自动模式 切换暗/亮/自动模式 返回首页

笔试题(10)

  1. 下列陈述中正确的有:
  • A.在大多数现代计算机的架构中,浮点数运算有专门的浮点运算器(FPU)负责。
  • B.unicode编码常见实现方式有utf8,utf16等。uf8表示每个unicode 字符占用8字节。
  • C.计算机访问存储器的速度从快到慢:寄存器>虚拟内存>物理内存>CPU L1 Cache>CPU L2 Cache (大于号表示速度更快)。
  • D.在C/C++中,把一个float类型的变量强制转化为int类型时,会发生四舍五入。
  1. 关于内存的说法,正确的有
  • A.如果计算机的物理内存为1G,那么该机器上运行的进程不能分配大于1G大小的空间
  • B.进程在退出时,操作系统会自动释放该进程中使用malloc、new 申请的所有内存。
  • C.为了减少内存碎片,在编写程序的时候,应该遵循:“用完内存立刻释放内存”的原则。
  • D.跨DLL传递STL 容器是一件很危险的行为,要尽量避免。
  1. 关于线程的有关说法,正确的有
  • A.多线程能够充分利用 CPU的并发性能,所以最坏情况下,使用多线程的程序的效率不会单线程差。
  • B.分配在函数内的局部变量、局部静态变量不会有线程安全的问题B
  • C.在C++中,一个线程内分配的内存不能传给另一个线程访问。
  • D.原子操作是指不会被线程调度机制打断的操作。例如,++a 是一个原子操作。
  • E.std::vector 是线程安全的容器。
  1. 下列关于STL的陈述中错误的有
  • A.向std::map插入一个元素的时间复杂度是O(logN),向std:map中查找一个元素的时间复杂度是 O(1)。
  • B.STL有自身的内存管理,所以类似这样的容器:std:vector<ClassA*>,容器被销毁的时候STL会自动将ClassA的内存释放,并调用容器内每个ClassA的实例的析构函数
  • C.具备1000个元素的std::list和同等规模的std:vector,通常情况下,遍历vector的效率要高一些。
  • D.往vector中插入元素可能会导致该vector 中已有的迭代器失效,map也一样。
  1. 数学
  • A.两个3D向量的点积的几何意义是:_________
  • B.两个3D向量的叉积的几何意义是:_________
  • C.将下面的矩阵作用在一个3D向量上,几何含义是:_________
    1 0 0
    0 2 0
    0 0 3
  1. 填空
class A{
    public:
        virtual void Foo(){}
        char a[5];
        int c;
        double* b;
        short d;
}

问 sizeof(A) = _______

  1. 判断并改错

下面3段程序,如果正确划勾,如果错误请指出并给出如何修改。

  • A
using namespace std;
void scan_delete(vector<string>& vec, const char* del_item){
    vector<string>::iterator itr = vec.begin();
    while(itr != vec.end()){
        if(*itr == del_item)
            vec.erase(itr);
        ++itr;    
    }
}

void main(){
    vector<string> vec("c++", "c#", "php", "lua", "java");
    scan_delete(vec, "php");
}
  • B
const char *getName(){
    return "Php is The Best Language";
}

void main(){
    std::string_name = getName();
}
  • C
class Car{
public:
    Car(const char* name){ m_Name = name; }
    std::string m_Name;
};

void main(){
    std::map<int, Car*> _map;
    _map[0] = new Car("Benz");
    _map[1] = new Car("Audi");
    _map[1] = new Car("Jeep");
    _map.clear();
}
  1. 编程