当前位置: 首页 > news >正文

ForThirdWork-No.2:C/C++笔试题回忆并整理

1、运行结果分析题

#include <iostream>

using namespace std;

int main()
{
    char str1[] = "abc" ;  char str2[] = "abc" ;
    const char str3[] = "abc" ; const char str4[] = "abc" ;
    char *str5 = "abc" ; char *str6 = "abc" ;  // warning见截图
    const char *str7 = "abc" ; const char * str8 = "abc" ;
    cout << "( str1 == str2 ):" << ( str1 == str2 ) << std::endl;
    cout << "( str3 == str4 ):" << ( str3 == str4 ) << std::endl;
    cout << "( str5 == str6 ):" << ( str5 == str6 ) << std::endl;
    cout << "( str7 == str8 ):" << ( str7 == str8 ) << std::endl;
    return 0;
}


分析:待


2、long、int 、double 占用的内存空间-->跟平台有关,待测试。

      union变量所占用的内存长度等于最长的成员的长度。


3、运行结果分析题

#include <iostream>

using namespace std;

class A{

};

class B{

    B() ;

    ~B() ;

};

class C{

    C() ;

    virtual ~C() ;

};

int main()

{

    cout << "sizeof( A ):" << sizeof( A ) << endl << "sizeof( B ):" << sizeof( B ) << endl << "sizeof( C ):" << sizeof( C ) << endl ;

    return 0;

}


分析:待


4、运行结果分析题


//qmakeCpp

#include <iostream>

using namespace std;

class A{
private:
    int n1 , n2 ;
public:
    A():n2( 0 ),n1( n2 + 2 ){

    }
    void print(){
        cout << "n1:" << n1 << endl << "n2:" << n2 << endl ;
    }
};

int main()
{
    A a;
    a.print();
    return 0;
}


分析:按照声明的顺序初始化。


5、运行结果分析题



//qmakeCpp

#include <iostream>

using namespace std;

class A{
public:
    A(){
        cout << "A is created" << endl ;
    }
    ~A(){
        cout << "A is destroyed" << endl ;
    }
};

class B:public A{
public:
    B(){
        cout << "B is created" << endl ;
    }
    ~B(){
        cout << "B is destroyed" << endl ;
    }
};

int main()
{
    A *pA = new B() ;
    delete pA ;
    return 0;
}


分析:有什么问题   未调用B的析构函数,会导致内存泄漏。



6、实现strcpy函数


7、实现String类

参见下列博客第2题:http://blog.csdn.net/jandunlab/article/details/16352217


8、程序运行结果题


class A{

    //……

public:

    void f( void ){

        

    }

};

int main()

{

    A *pA = NULL ;

    pA->f();

    return 0;

}


运行时崩溃


9、指针的使用( 略 )



相关文章:

  • ForThirdWork-No.3:C/C++笔试题回忆并整理
  • 字节序相关--本地字节序和网络字节序等
  • 网络协议分层
  • 关于C++静态成员变量
  • Code snippets for tips
  • Memory management in C programs( C内存管理 )
  • Visual Studio里面的搜索和浏览的一些技巧
  • Visual Studio debug 模式和 release 模式
  • Qt 将一个Widget(子)从某个Widget(父)中移除的方法
  • Bloglink list
  • 函数返回值:引用类型和非引用类型
  • C语言表达式和表达式的值
  • C语言知识点考题
  • 判断一个数是否为2的幂次
  • C99标准的新特性
  • 【从零开始安装kubernetes-1.7.3】2.flannel、docker以及Harbor的配置以及作用
  • 5、React组件事件详解
  • 78. Subsets
  • C# 免费离线人脸识别 2.0 Demo
  • C++类中的特殊成员函数
  • css系列之关于字体的事
  • JavaScript新鲜事·第5期
  • Logstash 参考指南(目录)
  • PAT A1050
  • 闭包,sync使用细节
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 从伪并行的 Python 多线程说起
  • 更好理解的面向对象的Javascript 1 —— 动态类型和多态
  • 计算机在识别图像时“看到”了什么?
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 如何用Ubuntu和Xen来设置Kubernetes?
  • 设计模式 开闭原则
  • 试着探索高并发下的系统架构面貌
  • 收藏好这篇,别再只说“数据劫持”了
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 在Unity中实现一个简单的消息管理器
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • Spring Batch JSON 支持
  • zabbix3.2监控linux磁盘IO
  • ​2020 年大前端技术趋势解读
  • ​VRRP 虚拟路由冗余协议(华为)
  • # 深度解析 Socket 与 WebSocket:原理、区别与应用
  • (2)STL算法之元素计数
  • (done) 两个矩阵 “相似” 是什么意思?
  • (pojstep1.1.2)2654(直叙式模拟)
  • (超详细)语音信号处理之特征提取
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (附源码)ssm考试题库管理系统 毕业设计 069043
  • (附源码)基于ssm的模具配件账单管理系统 毕业设计 081848
  • (转) SpringBoot:使用spring-boot-devtools进行热部署以及不生效的问题解决
  • (转)setTimeout 和 setInterval 的区别
  • .[hudsonL@cock.li].mkp勒索加密数据库完美恢复---惜分飞
  • .net core webapi 部署iis_一键部署VS插件:让.NET开发者更幸福
  • .NET Core 网络数据采集 -- 使用AngleSharp做html解析
  • .NET MVC 验证码