精品国产一级毛片大全,毛片一级在线,毛片免费观看的视频在线,午夜毛片福利

經(jīng)典c++求職筆試題目

  想面試c++方面的職位,那么下面的求職筆試題目可能對您有幫助哦。

  1. 已知strcpy的函數(shù)原型:char *strcpy(char *strDest, const char *strSrc)其中strDest 是目的字符串,strSrc 是源字符串。不調(diào)用C++/C 的字符串庫函數(shù),請編寫函數(shù) strcpy。

  答案:

  復(fù)制代碼

  #include <assert.h>

  #include <stdio.h>

  char*strcpy(char*strDest, constchar*strSrc)

  {

  assert((strDest!=NULL) && (strSrc !=NULL)); // 2分

  char* address = strDest;   // 2分

  while( (*strDest++=*strSrc++) !='\0' )       // 2分

  NULL;

  return address ;    // 2分

  }

  復(fù)制代碼

  另外strlen函數(shù)如下:

  復(fù)制代碼

  #include<stdio.h>

  #include<assert.h>

  int strlen( constchar*str ) // 輸入?yún)?shù)const

  {

  assert( str != NULL ); // 斷言字符串地址非0

  int len = 0;

  while( (*str++) !='\0' )

  {

  len++;

  }

  return len;

  }

  復(fù)制代碼

  2. 已知String類定義如下:

  復(fù)制代碼

  class String

  {

  public:

  String(const char *str = NULL); // 通用構(gòu)造函數(shù)

  String(const String &another); // 拷貝構(gòu)造函數(shù)

  ~String(); // 析構(gòu)函數(shù)

  String& operater =(const String &rhs); // 賦值函數(shù)

  private:

  char* m_data; // 用于保存字符串

  };

  復(fù)制代碼

  嘗試寫出類的成員函數(shù)實現(xiàn)。

  答案:

  復(fù)制代碼

  String::String(constchar*str)

  {

  if ( str == NULL ) // strlen在參數(shù)為NULL時會拋異常才會有這步判斷

  {

  m_data =newchar[1] ;

  m_data[0] ='\0' ;

  }

  else

  {

  m_data =newchar[strlen(str) +1];

  strcpy(m_data,str);

  }

  }

  String::String(const String &another)

  {

  m_data =newchar[strlen(another.m_data) +1];

  strcpy(m_data,other.m_data);

  }

  String& String::operator=(const String &rhs)

  {

  if ( this==&rhs)

  return*this ;

  delete []m_data; //刪除原來的數(shù)據(jù),新開一塊內(nèi)存

  m_data =newchar[strlen(rhs.m_data) +1];

  strcpy(m_data,rhs.m_data);

  return*this ;

  }

  String::~String()

  {

  delete []m_data ;

  }

  復(fù)制代碼

本文已影響6827
上一篇:2016年最新c++面試筆試題 下一篇:2016年教師招聘考試筆試題目

相關(guān)文章推薦

|||||