![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++经典面试题
CppWorker
这个作者很懒,什么都没留下…
展开
-
C++经典面试题(4)
4. C 语言的关键字 static 和 C++ 的关键字 static 有什么区别 在C 中static 用来修饰局部静态变量和外部静态变量、函数。而 C++中除了上述功能外,还用来定义类的成员变量和函数。即静态成员和静态成员函数。 注意:编程时 static的记忆性,和全局性的特点可以让在不同时期调用的函数进行通信,传递信息, 而 C++的静态成员则可以在多个对象实例原创 2014-01-16 14:02:06 · 537 阅读 · 0 评论 -
C++经典面试题(2)
2. 写出 bool 、int、 float、指针变量与“零值”比较的 if 语句 bool型数据: if( flag ) { A; } else { B; } int型数据: if( 0 != flag ) { A; } else { B; } 指针型数: if( NULL == flag ) { A;原创 2014-01-10 13:40:36 · 531 阅读 · 0 评论 -
C++经典面试题(3)
3. sizeof和strlen的区别 sizeof和 strlen 有以下区别: ①sizeof是一个操作符,strlen是库函数。 ②sizeof的参数可以是数据的类型,也可以是变量,而 strlen只能以结尾为‘\0‘的字符串作参数。 ③编译器在编译时就计算出了sizeof 的结果。而 strlen 函数必须在运行时才能计算出来。并且 sizeof计算的是数据类型占内原创 2014-01-13 09:04:17 · 422 阅读 · 0 评论 -
C++经典面试题(6)
6. 写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个 #define min(a,b)((a) 注意:在调用时一定要注意这个宏定义的副作用,如下调用: ((++*p) p指针就自加了两次,违背了 MIN的本意。原创 2014-01-16 14:09:32 · 566 阅读 · 0 评论 -
C++经典面试题(1)
1. 变量的定义和声明有什么区别? ①为变量分配地址和存储空间的称为定义,不分配地址的称为声明。 ②一个变量可以在多个地方声明,但是只能在一个地方定义。 int a; extern int a; 加入extern修饰的是变量的声明,说明此变量在文件以外或在文件后面部分定义。另外很多时候一个变量,只是声明不分配内存空间,直到具体使用时才初始化,分配内存空间,如外部变量。原创 2014-01-10 13:23:37 · 656 阅读 · 0 评论 -
C++经典面试题(5)
5. C 中的 malloc 和 C++ 中的 new 有什么区别 malloc和 new有以下不同: ① new、delete 是操作符,可以重载,只能在 C++中使用。 ② malloc、free是函数,可以覆盖,C、C++中都可以使用。 ③ new 可以调用对象的构造函数,对应的 delete 调用相应的析构函数。 ④ malloc仅仅分配内存,free 仅仅回收原创 2014-01-16 14:07:27 · 515 阅读 · 0 评论