1 / 16
文档名称:

搜狐c 面试题及参考答案c面试题及答案.doc

格式:doc   大小:25KB   页数:16页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

搜狐c 面试题及参考答案c面试题及答案.doc

上传人:WonderZ 2021/8/12 文件大小:25 KB

下载得到文件列表

搜狐c 面试题及参考答案c面试题及答案.doc

文档介绍

文档介绍:搜狐c++面试题及参考答案c面试题及答案
对搜狐c++求职或招聘的任一方而言,面试题具有着重要的现实意义。今天WTT要与大家分享的是搜狐c++面试题及参考答案,希望对大家的学****有帮助!
搜狐c++面试题及参考答案(一)
, 若正确, 写出经过表达式中 a的值(3分) int a =
4;
(A)a +=
(a++); (B) a +=
(++a) ;(C) (a++) +=
a;(D) (++a) +=
(a++);
a =
?
答:C错误,左侧不是一个有效变量,不能赋值,可改为(++a) +=
a;
改后答案依次为9,10,10,1
1
, C++程序,请计算sizeof 的值(5分).
char str[] =
“://../”
char *p =
str ;
int n =
10;
请计算
sizeof (str ) =
?(1)
sizeof ( p ) =
?(2)
sizeof ( n ) =
?(3)
void Foo ( char str[100]){
请计算
sizeof( str ) =
?(4)
}
void *p =
malloc(
100 );
请计算
sizeof ( p ) =
?(5)
答:(1)17 (2)4 (3) 4 (4)4 (5)4
.
(4分)
(1).头文中的 ifndef/define/endif 干什么用?预处理
答:防止头文被重复引用 (2).#i
nclude 和 #i nclude “” 有什么区别?
答:前者用来包含开发环境提供的库头文,后者用来包含自己编写的头文。
(3).在C++ 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”声明? 答:函数和变量被C++编译后在符号库中的名字与C语言的不同,被extern “C”修饰的变 量和函数是按照C语言方式编译和连接的。由于编译后的名字不同,C++程序不能直接调 用C 函数。C++提供了一个C 连接交换指定符号extern“C”来解决这个问题。
(4).switch()中不允许的数据类型是?
答:实型 4.
回答下面的问题(6分)
(1).Void GetMemory(char **p, int num){
*p =
(char *)malloc(num);
}
void Test(void){
char *str =
NULL;
GetMemory(&;str,
100);
strcpy(str, “hello”);
printf(str);
}
请问运行Test 函数会有什么样的结果?
答:输出“hello”
(2).void
Test(void){
char *str =
(char *) malloc(100);
strcpy(str, “hello”);
free(str);
if(str !=
NULL){
strcpy(str, “world”);
printf(str);
}
}
请问运行Test 函数会有什么样的结果?
答:输出“world”
(3).char
*GetMemory(void){
char p[] =
“hello world”;
return p;
}
void Test(void){
char *str =
NULL;
str =
GetMemory();
printf(str);
}
请问运行Test 函数会有什么样的结果?
答:无效的指针,输出不确定
(6分)
已知strcat函数的原型是char *strcat (char *strDest, const char *strSrc);
其中strDest 是目的字符串,strSrc 是源字符串。
(1)不调用C++/C 的字符串库函数,请编写函数 strcat
答:
VC源码:
char * __cdecl strcat (char * dst, const char * src)
{
char * cp =
dst;
while( *cp )
cp++; /* find end of dst */
while( *cp++ =
*src++ ) ; /* Copy src to end of dst */
return( dst ); /* return dst */
}
(2)strcat能把strSrc 的内容连接到strDest,为什么还要c