|
|
深圳某公司几个vc/mfc笔试题目(含参考答案)
1:Release版本下如何解决memory leak 以及非法操作的BUG。(搞不清什么非法操作)
2: 在异步socket时,为什么有时send不出数据,会报什么错误(分windows/linux下),你一般怎么处理?
下面是几个编程的 3:实现strstr模型 (我晕,我写了个函数,只是不是strstr,而是strchr)
4: 实现printf类似的函数, void myprintf(char *str,...) (用console API吗?好像在哪书上看到可用那些API实现,嘿,我就写了个std::cout<<) 5: 删除文本文件中出现频率最小的单词,(文件里以空格表示间隔一个单词) void func(char *pTxt)
1、strstr的实现原型。
char *my_strstr(const char *str, const char *strSearch) { while (*str != '\0') { char *p = (char *)str; char *ps = (char *)strSearch; while ( ps && *p == *ps ) p++, ps++; if ('\0' == *ps) return (char *)str; str++; } return NULL; }
2、从指定文本中删除出现频率最少的单词,如果有多个,则都删除。实现void func(char* pTxt)函数。
... 看 单词处理, 论坛中很多都有涉及
3、printf的实现。
int printf(const char *format, ...) { va_list arglist; int buffing; int retval;
va_start(arglist, format);
_ASSERTE(format != NULL);
#ifdef _MT _lock_str2(1, stdout); __try { #endif /* _MT */
buffing = _stbuf(stdout);
retval = _output(stdout,format,arglist);
_ftbuf(buffing, stdout);
#ifdef _MT } __finally { _unlock_str2(1, stdout); } #endif /* _MT */
return(retval); }
4、VC中有哪些方法避免C编译头文件重复。(除了#ifndef/#define/#endif外,就想不出来了)
#pragma once 5、extern "C"的用法。
用于 提供 C 接口, 如使用 C 命名方式 等 . 6、异步socket编程中,send不出数据的错误码是什么,(举Linux或Windows为例),你是怎么处理的?
非阻塞SOCKET,SEND不出数据的原因有2个吧,TCP下连接断开了和该SOCKET处在阻塞状态(也就是说在发送数据中)。UPD发不出只有TCP后面的情况。
处理的办法就是记录下该SOCKET的状态,当状态为阻塞的时间,放入缓冲,当该SOCKET再次可写时,发送。
7、异步IO和同步IO有什么区别?举例说明有几种(如read)?
异步IO当函数返回时不一定就完成了IO操作,而同步IO已经完成了。所以异步IO需要有一个事件,当IO完成时会设置此事件,调用者在事件上等待。 8、32位系统中,出现结构字节对齐的问题和大小端的问题的避免?
#pragma pack(4) 9、如何查出内存泄漏和非法操作的BUG(在Release版本下)?
使用map文件
--------------------------------------------------------------------------------
 相关文章
 某公司java笔试题.(超难)2007-4-2 19:05:34
 几道c笔试题(含参考答案)2007-4-2 19:05:10
 数据库笔试题(含参考答案)2007-4-2 19:04:16
 一道C++笔试题(含参考答案)2007-4-2 19:03:39
 Delphi软件工程师试题2007-3-29 8:24:01
 Trilogy公司的笔试题(含参考答案)2007-3-8 18:07:01
 著名软件公司的java笔试算法题!(含参考答案)2007-3-8 18:06:03
 java最新笔试题(含参考答案)2007-2-17 10:55:59
 百度招聘在线笔试题2007-1-30 17:11:05
 Google面试的20题2007-1-11 23:25:19
|
|
|
|
|