说说你面试遇到的写函数题!解决办法
说说你面试遇到的写函数题!!
我面试时要求写 strcpy函数,不准用c模板库
------解决方案--------------------
跟我一样呢
我也遇到这个题来的
太简单了
还有个文件读写
void myStrCpy(LPSTR lpszSource,LPSTR lpszDst)
{
while(*lpszSource!='\0')
{
*lpszDst=*lpszSource;
lpszDst++;
lpszSource++;
}
}
------解决方案--------------------
有些变态的人还想返回指针的,为了方便,省中间变量
------解决方案--------------------
最好去看下《高质量C++C 编程指南》,我的下载里有,刚出学校的话看下收获很大的哦。
已知 strcpy 函数的原型是
char *strcpy(char *strDest, const char *strSrc);
其中 strDest 是目的字符串,strSrc 是源字符串。
(1)不调用 C++/C 的字符串库函数,请编写函数 strcpy
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘\0’ ) // 2分
NULL ;
return address ; // 2分
}
(2)strcpy 能把 strSrc 的内容复制到 strDest,为什么还要 char * 类型的返回值?
答:为了实现链式表达式。 // 2 分
例如 int length = strlen( strcpy( strDest, “hello world”) );
------解决方案--------------------
当初面试时就10道题......
10到不难但是 稍微有点绕的题,主要测了一个倾向性,学过并且稍微熟悉就能答对,没学过肯定答不对..就这种难度...
依稀记得
java
c++
delphi
数据库
汇编
PE文件格式
驱动
算法 (算法不复杂,主要就看了下逻辑性和代码风格)
...还有几个 各1道呵呵.....做这种题就比较喜欢...
感觉有些公司的面试就像我国的应试教育一样.....
说到面试...记得刚毕业的时候, 有个搞java的公司(其实就是个培训机构)说招人,打电话给我.
我说我学的C++哦.他说行明天xxxx点 你来。我去后,面试官对我说,你一个学C++的敢来面试我们做
Java的 勇气可嘉....我当时真的非常无语....
面试题最后1到 我依然记得 是 如何用程序判断1个数是否刚好是2的n次方......不准用库函数
我就想循环除以2吧,一个数4字节也就32位,顶多除32次就完了,或则就位移也行....
当时我就想既然无法1次就判断玩 那么O(n)也不慢吧......
做完后面试官对我说...“你这种方法太慢了,我可以写1个算法,以后每次只要1步调用就行了"
我实在太无语了......谎称有事逃跑了呵呵....
不过还好,后来几乎就是面试不败呵呵....
被楼主的标题感染了 有感而发呵呵 大家勿笑....
其实我也在想,要是我们应聘给出的解决方案,面试官万一水平差点不懂会怎样?
------解决方案--------------------
写个memcpy函数试试
------解决方案--------------------
------解决方案--------------------
这个看过详细的分析,正如楼上说的那本书。
我的一次笔试,只记得有写10个指针:数组指针,指针数组,函数指针,指针函数之类的。
------解决方案--------------------
------解决方案--------------------
(1)不调用 C++/C 的字符串库函数,请编写函数 strcpy
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘\0’ ) // 2分
NULL ;
return address ; // 2分
}
(2)strcpy 能把 strSrc 的内容复制到 strDest,为什么还要 char * 类型的返回值?
答:为了实现链式表达式。 // 2 分
例如 int length = strlen( strcpy( strDest, “hello world”) );
高质量,内存和效率怎么算?
------解决方案--------------------
我面试时候让写内存拷贝
我面试时要求写 strcpy函数,不准用c模板库
------解决方案--------------------
跟我一样呢
我也遇到这个题来的
太简单了
还有个文件读写
void myStrCpy(LPSTR lpszSource,LPSTR lpszDst)
{
while(*lpszSource!='\0')
{
*lpszDst=*lpszSource;
lpszDst++;
lpszSource++;
}
}
------解决方案--------------------
有些变态的人还想返回指针的,为了方便,省中间变量
------解决方案--------------------
最好去看下《高质量C++C 编程指南》,我的下载里有,刚出学校的话看下收获很大的哦。
已知 strcpy 函数的原型是
char *strcpy(char *strDest, const char *strSrc);
其中 strDest 是目的字符串,strSrc 是源字符串。
(1)不调用 C++/C 的字符串库函数,请编写函数 strcpy
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘\0’ ) // 2分
NULL ;
return address ; // 2分
}
(2)strcpy 能把 strSrc 的内容复制到 strDest,为什么还要 char * 类型的返回值?
答:为了实现链式表达式。 // 2 分
例如 int length = strlen( strcpy( strDest, “hello world”) );
------解决方案--------------------
当初面试时就10道题......
10到不难但是 稍微有点绕的题,主要测了一个倾向性,学过并且稍微熟悉就能答对,没学过肯定答不对..就这种难度...
依稀记得
java
c++
delphi
数据库
汇编
PE文件格式
驱动
算法 (算法不复杂,主要就看了下逻辑性和代码风格)
...还有几个 各1道呵呵.....做这种题就比较喜欢...
感觉有些公司的面试就像我国的应试教育一样.....
说到面试...记得刚毕业的时候, 有个搞java的公司(其实就是个培训机构)说招人,打电话给我.
我说我学的C++哦.他说行明天xxxx点 你来。我去后,面试官对我说,你一个学C++的敢来面试我们做
Java的 勇气可嘉....我当时真的非常无语....
面试题最后1到 我依然记得 是 如何用程序判断1个数是否刚好是2的n次方......不准用库函数
我就想循环除以2吧,一个数4字节也就32位,顶多除32次就完了,或则就位移也行....
当时我就想既然无法1次就判断玩 那么O(n)也不慢吧......
做完后面试官对我说...“你这种方法太慢了,我可以写1个算法,以后每次只要1步调用就行了"
我实在太无语了......谎称有事逃跑了呵呵....
不过还好,后来几乎就是面试不败呵呵....
被楼主的标题感染了 有感而发呵呵 大家勿笑....
其实我也在想,要是我们应聘给出的解决方案,面试官万一水平差点不懂会怎样?
------解决方案--------------------
写个memcpy函数试试
------解决方案--------------------
------解决方案--------------------
这个看过详细的分析,正如楼上说的那本书。
我的一次笔试,只记得有写10个指针:数组指针,指针数组,函数指针,指针函数之类的。
------解决方案--------------------
------解决方案--------------------
(1)不调用 C++/C 的字符串库函数,请编写函数 strcpy
char *strcpy(char *strDest, const char *strSrc);
{
assert((strDest!=NULL) && (strSrc !=NULL)); // 2分
char *address = strDest; // 2分
while( (*strDest++ = * strSrc++) != ‘\0’ ) // 2分
NULL ;
return address ; // 2分
}
(2)strcpy 能把 strSrc 的内容复制到 strDest,为什么还要 char * 类型的返回值?
答:为了实现链式表达式。 // 2 分
例如 int length = strlen( strcpy( strDest, “hello world”) );
高质量,内存和效率怎么算?
------解决方案--------------------
我面试时候让写内存拷贝