精品一区二区中文在线,无遮挡h肉动漫在线观看,国产99视频精品免视看9,成全免费高清大全

網游公司的筆試題大

時間:2018-12-31 12:00:00 資料大全 我要投稿

網游公司的筆試題大集合

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:perator =(const String &rhs)
  {
  if ( this == &rhs)
  return *this ;
  delete []m_data; //刪除原來的數據,新開一塊內存
  m_data = new char[strlen(rhs.m_data) + 1];
  strcpy(m_data,rhs.m_data);
  return *this ;
  }
  String::~String()
  {
  delete []m_data ;
  }
operator const char *() const
{
return str;
}
2) operator const char *() const 后面的const的作用.
2.new/delete和malloc/free的區別,什么時候需要建立自己的內存分配機制,

網游公司的筆試題大集合

。
3.static和volatile的用途。
static:
4.什么是深拷貝?什么是淺拷貝?舉例說明。
#include <string.h>
#include <stdio.h>
class Base
{
private:
char * name;
public:
Base(char * className)
{
name = new char[strlen(className)+1];
strcpy(name, className);
}
~Base()
{
delete 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 <string.h>
#include <stdio.h>
class Base
{
private:
char * name;
public:
Base(char * className)
{
name = new char[strlen(className)+1];
strcpy(name, className);
}
~Base()
{
delete 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);
delete temp;
return 0;
}

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

資料共享平臺

網游公司的筆試題大集合》(http://salifelink.com)。
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失效
就加一個 <int>就完了。
#include <list>
int main()
{
std::list<int> list1;
for(int i=0;i < 8;i++)
list1.push_back(i);
for(std::list<int>::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中的內存分配方式有哪些,他們的優缺點是什么。

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

1.盛大新網游類筆試題

2.360筆試題目

3.360筆試題目

4.KP公司的筆經

5.馬士基公司筆經

6.IBM公司筆經

7.筆美國國家儀器試題目

8.廣本09年筆試題目

主站蜘蛛池模板: 国产精品福利一区二区| 国产熟女乱子视频正在播放| 亚洲中文字幕国产综合| a级国产乱理伦片在线播放| 国产日韩精品一区二区三区在线| 国产精品爽爽VA在线观看无码| 天天综合天天做天天综合| 青春草在线视频观看| free性欧美hd另类| 99欧美日本一区二区留学生| 六月丁香综合在线视频| 精品久久国产字幕高潮| 男女猛烈激情xx00免费视频| 又黄又爽又色的视频| 中文字幕日韩欧美一区二区三区| 免费A级毛视频| 日本免费人成视频在线观看| 国产日韩精品一区二区三区在线| 亚洲高清一区二区三区电影| 欧美人与禽zoz0性伦交| 香蕉人人超人人超碰超国产| 97在线观看| 精品国精品国产自在久国产应用| 免费人成年激情视频在线观看| 老熟女富婆激情刺激对白| 国产zzjjzzjj视频全免费| 精品国产AV一区二区三区| 亚洲 成人 综合 另类 图区| 欧美激情一区二区三区在线| 最近中文字幕mv免费高清在线| 尤物在线精品视频| 99热这里只有精品免费播放| 凹凸国产熟女精品视频| 天天做天天爱夜夜爽| 久青青在线观看视频国产| 国产精品久久久久AV| 国产成年无码久久久久毛片| 99这里只有精品| 国产精品 高清 尿 小便 嘘嘘| 精品亚洲成A人在线观看青青| 免费A级毛片高清在钱|