<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • 網游公司的筆試題大

    時間:2024-08-24 05:11:55 綜合指導 我要投稿
    • 相關推薦

    網游公司的筆試題大集合

      (轉)

    網游公司的筆試題大集合

      1 上海樂升筆試:

      馮諾依曼機的體系結構

      各種RAM的名詞解釋

      遞歸求5!

      C程序優化

      翻譯有關windows資源處理的文章

      上機:

      寫api 進行分數的四則運算

      寫api 針對2個8位的數的四則運算 該平臺不支持16位

      寫api 對一個10個元素的數組排序 并且支持檢索

      盧老師教過的放10個球到盒子問題

      2 揚訊科技(手機)寫個MIN(a, b)的宏

      函數指針

      指針數組等

      游戲程序的特點

      游戲程序的結構

      鏈表的插入 索引

      typedef 和 #define 的優點和缺點

      你最熟悉的游戲算法

      3 巨人網絡

      1.class String

      {

      public:

      String(const char *cp = NULL);

      String(const String & cp);

      ~String();

      String& operator = (const String & cp);

      operator const char *() const;

      private:

      char *m_data;

      }

      1) 完成類的方法;

      String::String(const char *str)

      {

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

      {

      m_data = new char[1] ;

      m_data[0] = \0 ;

      }

      else

      {

      m_data = new char[strlen(str) + 1];

      strcpy(m_data,

      String::String(const String &another)

      {

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

      strcpy(m_data,other.m_data);

      }

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

      {

      if ( this == &rhs)

      return *this ;

      []m_data; //刪除原來的數據,新開一塊內存

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

      strcpy(m_data,rhs.m_data);

      return *this ;

      }

      String::~String()

      {

      []m_data ;

      }

      operator const char *() const

      {

      return str;

      }

      2) operator const char *() const 后面的const的作用.

      2.new/和malloc/free的區別,什么時候需要建立自己的內存分配機制。

      3.static和volatile的用途。

      static:

      4.什么是深拷貝?什么是淺拷貝?舉例說明。

      #include

      #include

      class Base

      {

      private:

      char * name;

      public:

      Base(char * className)

      {

      name = new char[strlen(className)+1];

      strcpy(name, className);

      }

      ~Base()

      {

      name;

      }

      char *copyName()

      {

      char newname[256];

      strcpy(newname, name);

      return newname;

      }

      char *getName()

      {

      return name;

      }

      static void print (Base base)

      {

      printf("name: %s\n",base.name);

      }

      };

      class Subclass : public Base

      {

      public:

      Subclass(char * className) : Base(className)

      {

      }

      };

      int main()

      {

      Base *pBase = new Subclass("test");

      Base::print(*pBase);//用后會被釋放掉,下面的指向將為空指針,應改為引用

      printf("name: %s\n", pBase->getName());

      printf("new name: %s\n", temp);

      return 0;

      }

      對上面程序進行編譯不報錯,但是程序不能執行.

      下面是改正后的:

      #include

      #include

      class Base

      {

      private:

      char * name;

      public:

      Base(char * className)

      {

      name = new char[strlen(className)+1];

      strcpy(name, className);

      }

      ~Base()

      {

      name;

      }

      char *copyName()

      {

      char *newname = new char[strlen(name)+1];

      strcpy(newname, name);

      return newname;

      }

      char *getName()

      {

      return name;

      }

      static void print (Base base)

      {

      base.name = base.copyName(); //深度拷貝

      printf("name: %s\n",base.name);

      }

      };

      class Subclass : public Base

      {

      public:

      Subclass(char * className) : Base(className)

      {

      }

      };

      int main()

      {

      Base *pBase = new Subclass("test");

      Base::print(*pBase);//用后會被釋放掉,下面的指向將為空指針,應改為引用

      printf("name: %s\n", pBase->getName());

      char *temp = pBase->copyName();

      printf("new name: %s\n", temp);

      temp;

      return 0;

      }

      5.一個自定義類String的改錯題。

      6.void GetMemory(char *p)

      {

      p = (char *)malloc(100);

      }

      void Test(void)

      {

      char *str = NULL;

      GetMemory(str);

      strcpy(str, "hello world");

      printf(str);

      }

      請問運行Test函數會有什么樣的結果?

      如果函數的參數是一個指針,不要指望用該指針去申請動態內存。示例7-4-1中,Test函數的語句GetMemory(str, 200)并沒有使str獲得期望的內存,str依舊是NULL,為什么?

      void GetMemory(char *p, int num)

      {

      p = (char *)malloc(sizeof(char) * num);

      }

      void Test(void)

      {

      char *str = NULL;

      GetMemory(str, 100); // str 仍然為 NULL

      strcpy(str, "hello"); // 運行錯誤

      }

      示例7-4-1 試圖用指針參數申請動態內存

      毛病出在函數GetMemory中。編譯器總是要為函數的每個參數制作臨時副本,指針參數p的副本是 _p,編譯器使 _p = p。如果函數體內的程序修改了_p的內容,就導致參數p的內容作相應的修改。這就是指針可以用作輸出參數的原因。在本例中,_p申請了新的內存,只是把 _p所指的內存地址改變了,但是p絲毫未變。所以函數GetMemory并不能輸出任何東西。事實上,每執行一次GetMemory就會泄露一塊內存,因為沒有用free釋放內存。

      如果非得要用指針參數去申請內存,那么應該改用“指向指針的指針”,見示例7-4-2。

      void GetMemory2(char **p, int num)

      {

      *p = (char *)malloc(sizeof(char) * num);

      }

      void Test2(void)

      {

      char *str = NULL;

      GetMemory2(&str, 100); // 注意參數是 &str,而不是str

      strcpy(str, "hello");

      cout<< str << endl;

      free(str);

      }

      7.int i;

      std::list list1;

      for(i = 0; i < 8; i++)

      list1.push_back(i);

      for(std::list::iterator = list1.begin(); iterator != list1.end(); iterator++)

      if (*iterator % 2)

      list1.erase(iterator);

      這段代碼在運行時會產生什么錯誤,怎么改正。

      erase之后iterator失效

      就加一個就完了。

      #include

      int main()

      {

      std::listlist1;

      for(int i=0;i < 8;i++)

      list1.push_back(i);

      for(std::list::iterator it=list1.begin();it!=list1.end();++it)

      {

      if(*it%2 == 0)

      {

      it = list1.erase(it);

      it --;

      }

      }

      return 0;

      }

      8.對Gcc編譯選項做些介紹。

      9.Gdb中如何設置中斷點,逐步調試程序。

      10.游戲編程中如何對顯存進行管理。//這是唯一的一道和游戲直接有關題目。

      11.windows中的內存分配方式有哪些,他們的優缺點是什么。


    【網游公司的筆試題大】相關文章:

    網游高薪招聘竟然是噱頭02-19

    大唐公司筆試題02-19

    中國銀行筆試題回顧,新鮮筆經!11-21

    公司面試筆試題11-21

    熱力公司筆試試題09-23

    鐵塔公司筆試試題04-25

    太古地產有限公司筆經02-19

    迅雷JAVA廣州站二筆筆試題目分享11-21

    請關注SHL公司出的試題11-11

    Google公司預選筆試試題02-18

    主站蜘蛛池模板: 国产精品综合色区在线观看| 久久精品不卡| 91人妻人人澡人人爽人人精品| 午夜国产精品无套| 国产精品午夜一级毛片密呀| 国产精品ⅴ无码大片在线看| 四虎影视永久在线精品| 国产精品亚洲欧美大片在线观看| 国产亚洲精品自在久久| 亚洲欧洲精品成人久久曰影片 | 国内精品伊人久久久久网站| 99久久99久久精品免费看蜜桃| 亚洲国产精品综合久久一线| 国产精品婷婷午夜在线观看| 亚洲精品私拍国产福利在线| 成人无码精品1区2区3区免费看| 自拍偷在线精品自拍偷| 欧美久久亚洲精品| 精品久久久久久国产牛牛app| 欧美精品一区二区精品久久| 国产亚洲色婷婷久久99精品| 亚洲精品午夜无码专区| 亚洲精品视频免费观看| 香蕉国产精品麻豆亚洲欧美日韩精品自拍欧美v国 | 91精品国产综合久久四虎久久无码一级 | 国产精品揄拍100视频| 久久精品人人做人人爽97| 亚洲一区爱区精品无码| 中文字幕精品视频在线| 亚洲乱码国产乱码精品精| 香港三级精品三级在线专区| 日韩精品无码免费视频| 久久免费99精品国产自在现线| 国产精品午夜国产小视频| 国产免费久久精品丫丫| 国产欧美精品一区二区色综合 | 国产精品无码国模私拍视频| 国产精品日韩欧美久久综合| 人精品影院| 精品国产一区二区三区AV性色 | 香蕉99久久国产综合精品宅男自|