精选优质文档-倾情为你奉上1 C+语言基础及过程化程序设计1.1 基础概念1. 函数声明和函数定义有什么区别?答:1) 函数声明是函数的原型,强调函数如何被使用,不包含函数的实现代码;2) 函数定义给出函数的实现代码。2. const char *p1; char * const p2;的区别答:1) const位于星号的左侧, const用来修饰指针所指向的变量,即指针指向为常量;2)const位于星号的右侧,const用来修饰指针本身,即指针本身是常量。3. delete与 delete 区别答:delete只会调用一次析构函数,而delete会调用动态分配的多个对象的析构函数4. 解释堆和栈的区别答:1) 栈:由编译器自动分配释放,存放函数的参数、局部变量等。通常在超出作用域后由系统自动释放。2) 堆:一般由程序员负责分配与释放,若程序员不释放,占用的内存直到程序结束才由OS回收。5. 在什么时候需要使用“常引用”?答:如果既要利用引用提高程序的效率,又要保护传递给函数的数据不在函数中被改变,就应使用常引用。6