会员中心     
首页 > 资料专栏 > HRM > 人力资源 > 面试甄选 > 微软研究院笔试题目及答案-嵌入式面试真题DOC

微软研究院笔试题目及答案-嵌入式面试真题DOC

cxy7660
V 实名认证
内容提供者
资料大小:5KB(压缩后)
文档格式:DOC(13页)
资料语言:中文版/英文版/日文版
解压密码:m448
更新时间:2025/4/28(发布于浙江)

类型:积分资料
积分:10分 (VIP无积分限制)
推荐:免费申请

   点此下载 ==>> 点击下载文档


“微软研究院笔试题目及答案-嵌入式面试真题DOC”第1页图片 图片预览结束,如需查阅完整内容,请下载文档!
文本描述
微软研究院是一个听起来就牛B的地方啊,反正我是进不去,不过不妨碍我看看他的笔试题到底是怎么样的。下面四道题就是微软研究院的笔试题目,题后附有我的解答。 微软研究院(亚洲)的网址是:research.microsoft/asia/ 1.改错 #include #include class CBuffer { char * m_pBuffer; int m_size; public: CBuffer() { m_pBuffer=NULL; } ~CBuffer() { Free(); } void Allocte(int size) (3) { m_size=size; m_pBuffer= new char[size]; } private: void Free() { if(m_pBuffer!=NULL) { delete m_pBuffer; m_pBuffer=NULL; } } public: void SaveString(const char* pText) const { strcpy(m_pBuffer, pText); } char* GetBuffer() const { return m_pBuffer; } }; void main (int argc, char* argv[]) { CBuffer buffer1; buffer1.SaveString("Microsoft"); printf(buffer1.GetBuffer()); } 答:改正后 主要改正SaveString函数 将 void SaveString(const char* pText) const { strcpy(m_pBuffer, pText); } 改为 void SaveString(const char* pText) (1) { Allocte(strlen(pText)+1); (2) strcpy(m_pBuffer, pText); } 原因: (1) const成员函数表示不会修改数据成员,而SaveString做不到,去掉const声明 (2) m_pBuffer指向NULL,必须用Allocte分配空间才能赋值。 (3) 另外需要将Allocte成员函数声明为私有成员函数更符合实际 2.下来程序想打印“Welcome MSR Asia”,改正错误 #include #include char * GetName (void) { //To return “MSR Asia” String char name[]="MSR Asia"; return name; } void main(int argc, char* argv[]) { char name[32]; //Fill in zeros into name for(int i=0;i<=32;i++) { name[i]=\0; } //copy “Welcome” to name name="Welcome"; //Append a blank char name[8]=" "; //Append string to name strcat(name,GetName()); //print out printf(name); } 答:改正后为 #include #include char * GetName (void) { //To return “MSR Asia” String //char name[]="MSR Asia"; (1) char *name=(char *)malloc(strlen("MSR Asia")+1); strcpy(