刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322

来源:互联网 发布:手机网络赚钱论坛 编辑:程序博客网 时间:2024/05/02 04:16

1)       下面描述错误的是____A_______3分)
  A.
局部变量和局部静态变量均存放于栈内存中
  B.
全局变量和全局静态变量存放于数据区内存中
  C.
动态分配的内存存放于堆内存中
  D.
类的静态成员变量存放于数据区内存中

2)       以下是合法的标识符的是____B____3分)
  A. define          B. abc/            C. vector             D. #int

3)       int i;
for (i=0; i=2; i++) {};
试问该循环执行次数:   无限次         (3)

4)       char szText[100]; sizeof(szText) =      100       (3)
char * pszText = szText; sizeof(pszText) =     4        (3
)
void Function(short szParam[100])
{
    sizeof(szParam) =     200        (3
)
}
char szText[] = “Hello”; sizeof(pszText) =     4        (3
)
struct TestNode
{
    char ch1;
    short s;
    char ch2;
    long l;
};
sizeof(TestNode) =      12       (3
)

5)       下面与函数 void Print(char ch = ‘a’, int i = 0); 不构成重载的两个函数        C    (3)
   A. void Print(int i, char ch = ‘a’);
   B. void Print(char ch);
   C. int Print();
   D. int Print(char ch, char ch);

6)       下面程序的输出结果为     C       (3)
#include<iostream>
using namespace std;
void main()
{
  char* a[] = {"hello", "the", "world"};
  char** pa = a;
  pa++;
  cout << *pa << endl;
}
  A. hello             B. elllo              C. the             D. world

7)       关于构造函数与析构函数的描述正确的是    D        (3)
  A.
一个类可以没有构造函数与析构函数
  B.
一个类可以有多个构造函数与多个析构函数
  C.
一个类肯定会存在一个默认构造函数和析构函数
  D.
一个类肯定存在构造函数与析构函数

8)       class CBase {};
class CDerive : public CBase {};
CBase base;
CDerive derive;
以下用法不正确的是      D       (3)

  A. CBase* p = &derive;                   B. CBase& r = base;
  C. base = derive;                         D. derive = base;

9)       class CBase{
public:
    virtual ~ CBase () { Print(); }
    virtual void Print() { cout << “CBase destruct” << endl; }
};
class CDrive : public CBase {
public:
    virtual void Print() { cout << “CDrive destruct” << endl; }
};
其输出结果为    CBase destruct          (3)

10)    typedef <typename _T> class CObjectImpl {
public:
    void Print() { _T* pThis = (_T*)this;  pThis->OnPrint(); }
    void OnPrint() { cout << “CObjectImpl” << endl; }
};
class CInstance : public CObjectImpl< CInstance> {
public:
    void OnPrint() { cout << “CInstance” << endl; }
}
class CDerive : public CInstance {
public:
    void OnPrint() { cout << “CDerive” << endl; }
}
void main(void) {
    CInstance instance;
    CDerive derive;
    instance.Print();
    derive.Print();
}
运行结果为:

     CObjectImpl                     (3
)
      CInstance                    (3
)

11)    int nData[100];
请写出sizeof(nData)/ sizeof(nData[0])的值,并说明这个代码的作用。(5
)
sizeof(nData)=400
sizeof(nData[0])=4
sizeof(nData)/ sizeof(nData[0])=100





12)    请写出const的用途(5分)
1
,定义常量

2,修饰参数

3,修饰函数(返回值)







13)    class CBase {};
class CDrive : public CBase
{
public:
    CDrive() : m_strName(“”);
private:
    string       m_strName;
}

void main()
{
    CBase* pBase = new CDrive[10];
    delete[] pBase;
}
请列出上述代码存在的问题:(10分)


答:在类中声明默认构造函数CDrive(),但是没有实现这个默认构造函数

而且 : m_strName(“”) 是在定义函数是使用的!
一个类必须要要一个析构函数





14)    请实现函数memcpy
pDest
为目标地址,pSrc为源地址,nSize为要复制的字节数。(15分)
#include <iostream>

#include <string>

using namespace std;

void* memcpy(void* pDest, const void* pSrc, int nSize)

       {

              if (pDest == NULL || pSrc == NULL)

          {

                return NULL;

          }

       if (pDest == pSrc)

       {

              return pDest;

       }

      

if( nSize>0 )

{

        int Offset = pDest - pSrc;          

        if (Offset > 0 && Offset < nSize+1)

{

              pDest += nSize;

              pSrc += nSize;

              for (;nSize >=0; nSize --, * pDest -- = * pSrc --)

              {

               }

         }

         else

         {

              for (; (*pDest ++=* pSrc ++) != '/0' && nSize>=0; nSize--) {};

         }

              return pDest;

       }

int main(int argc, char* argv[])

{

    char *pszDest = new char[100];

       memset(pszDest, 0, 100);

memcpy(pszDest, “Hello !”,8);

       cout << pszDest << endl;

    return 0;                                                                                                  

}
}

15)    请实现类CString(20)
class CString
{
public:
    CString(const char* psz = NULL);
    CString(const CString&);
    ~CString();
    CString& operator=(const char* psz);
    bool operator==(const char* psz) const;
private:
    char* m_psz;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////

CString::CString(const char* psz)

: m_psz(NULL)

{

       if (psz != NULL)

       {

         Int nLength;

              nLength = strlen(psz);

              m_psz = new char[nLength+1];

              strcpy(m_psz, psz);

       }

}

////////////////////////////////////////////////////////////////////////////////////////////

CString::CString(const CString& )

: m_psz(NULL)

 {

       if (this.m_psz != NULL)

       {

              Int nLength = strlen(m_psz);

              m_psz = new char[nLength+1];

              strcpy(m_psz, this.m_psz);

       }

}

///////////////////////////////////////////////////////////////////////////////////////

CString::~CString()

{

       if (m_psz != NULL)

       {

              delete[] m_psz;

              m_psz = NULL;

       }

}

//////////////////////////////////////////////////////////////////////////////////

 

 

 

CString& CString::operator=(const CString &psz)

{

       if (this == &psz)

       {

              return *this;

       }

 

       if (m_psz != NULL)

       {

              delete[] m_psz;

              m_psz = NULL;

       }

       if (psz.m_psz != NULL)

       {

              int nLength = strlen(m_psz);

              m_psz = new char[nLength+1];

              strcpy(m_psz, psz.m_psz);

       }

       return *this;

}

/////////////////////////////////////////////////////////////////////

bool CString:: operator==(const char* psz) const

{

       psz = (psz==NULL) ? "" : psz;

       const char* pString = m_psz==NULL ? "" : m_psz;

       return strcmp(pString, psz) == 0;

}

/////////////////////////////////

int main ()

{

CString str1("bear");

     CString str2("rabit");

If(str1 == str2)

{

     Cout<<str1<<

  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • 大家好,我需要做网站的高手帮忙,谢谢!
  • 写入手机的软件,用什么工具可以打开呀?请高手指点,如果需要的话我可一把文件发给你,谢谢!
  • 我的个人博客开通啦,欢迎来吐槽,有何问题可发邮件到1207012718@qq.com反馈,谢谢~
  • 求助各位高手,帮忙做下,谢谢了
  • 大家好,,我刚接触c#和asp,,我不知道用asp做网页怎样嵌套c#程序呢,,请高手指点,,谢谢!
  • 我是个vb初学者想请教高手点简单的vb问题如果可以请加我的QQ:382245409谢谢
  • 如何在特定的区域提问?请哪位高手帮忙指点一下,谢谢!
  • 如有需要跟我学习 触摸精灵软件的朋友请加我QQ 811037998 备注来源 CSDN
  • 需要帮助的朋友可以加我的QQ交流
  • 用asp做很简单的讨论室(比聊天简单),如何分房间?主要是房间的名字如何定义?高手帮忙,谢谢啦!!
  • 为什么C++里所有类型的变量都一整型输出???请高手帮忙, 谢谢啦!!!!
  • 有需要资料的朋友,可QQ联系我,
  • 谢谢了... 友友 一些C语言的题有时间能帮我做吗
  • Tomcat首页刷不出来
  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • 多语言开发文章小结
  • jqGrid与Struts2的结合应用(九) —— 补充细节
  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • 给你的WinForms程序加上启动动画
  • 别被直觉所蒙蔽(3):有些事并不同样会发生
  • 刚做的c++作业,高手可以帮忙指点下吗,谢谢啦!如有需要可加我 QQ:568835322
  • MPEG-4视频压缩基础
  • chrome隐身模式启动
  • JS刷新当前页面
  • 云计算中安全管理和企业风险控制的基本问题
  • 原创粉丝点击
    热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 撩起嫂嫂裙子顶上去中国电影 女生勿进进必湿gif 皇后被太子强玩 引起嫂嫂裙子顶上去 婶子的哪里又紧水又多 哥哥好凶猛太大要撑坏 老师让学生趴小内内 两个阿姨一起陪我睡觉 朋友妻子来我家洗澡你家茜 老师 主动脱下内内 浪妇杨雪小说全集 同学的妻子在线播放 韩国朋友妻子在线播放 朋友坐牢替他照顾妻子在线播放 比我老婆还要正在线播放 朋友的妻子20在线播放 寂寞的妻子手机在线 朋友出差替他照顾妻子在线播放 偷朋友妻子在线播放 搞兄弟母亲中文字在线播放 隔壁的日本妻子1中文字 年轻的母亲5d整部中文字 老师强入我体内 嫂嫂 的房门没关紧 共享妻子第3季 小石玩妻子第三部 朋友母亲的味道中文版 互换朋友妻子3换 母亲的朋友2集中文免费观看 领导出差他老婆留我过夜 厨房偷上朋友妻全文阅读答案 被老公朋友强入bd 和领导回家睡了他老婆 老公在偷吃别人我在家吃他老爹 送领导回家强睡他老婆 我在老公的眼皮底下偷吃 快递员在我家要了我 30岁军嫂身体好软 当着女朋友的面睡他朋友视频 偷朋友的妻子电影中国字 老公朋友下厨房要了我