华为笔试面试题集:CC++语言与软件开发测试

需积分: 0 21 下载量 115 浏览量 更新于2024-08-01 收藏 1.84MB PDF 举报
"这份资料是1912年制作的一份华为公司笔试和面试题集,总共包含了395页的题目,主要涉及CC++语言的相关知识,包括软件开发和测试的内容。" 在这份题集中,我们可以看到一些基础的编程概念和C/C++语言的常见问题。首先,关于局部变量和全局变量的使用,题集指出,局部变量可以与全局变量同名,但在函数内部,局部变量会屏蔽全局变量。如果需要访问全局变量,需要使用作用域解析运算符"::"。此外,局部变量的作用域仅限于定义它的代码块,而在某些情况下,如循环体内,可以多次定义同名的局部变量,但每个变量的作用域仅限于各自的循环体。 接着,题集探讨了如何引用全局变量。可以通过在源文件中包含头文件或者使用`extern`关键字来引用全局变量。值得注意的是,通过头文件引用全局变量时,编译阶段就会检查变量的正确性,而使用`extern`则会在链接阶段检查。 对于全局变量在头文件中的使用,题集指出可以这样做,但推荐在不同的C文件中以`static`修饰同名全局变量,以限制它们的作用域。静态全局变量只在其定义的源文件内可见,避免了命名冲突。 题集还提到了一些控制流语句,如`for(;1;)`等同于`while(1)`,表示无限循环。`do...while`和`while...do`的主要区别在于判断条件的时机,前者先执行循环体再判断条件,后者先判断条件再执行循环体。 在C/C++的变量存储类别中,`static`有特殊的意义。静态全局变量与非静态全局变量的区别在于作用域,前者只在其定义的源文件内有效,后者在整个源程序中有效。静态局部变量则只在定义它的函数内保持其值,且仅初始化一次,而普通局部变量每次函数调用都会重新初始化。最后,静态函数与普通函数的区别在于,静态函数的链接属性是私有的,只在定义它的源文件中可见,而普通函数可以被其他源文件调用。 这份题集全面覆盖了C/C++的基础知识,对准备华为公司的笔试和面试具有很高的参考价值,有助于考生熟悉和掌握这些基本概念和编程技巧。