华为C语言笔试精华及全局变量详解
5星 · 超过95%的资源 需积分: 9 11 浏览量
更新于2024-07-23
收藏 84KB DOC 举报
华为C语言笔试主要考察了面试者对C语言基础和编程规范的理解。以下是部分题目详解:
1. 局部变量与全局变量重名:在C语言中,局部变量可以与全局变量同名,但局部变量会遮蔽全局变量。要在函数内部使用全局变量,需明确指定为"::",或者在头文件中声明全局变量,并在需要使用的地方用extern关键字。
2. 引用全局变量:使用extern关键字可以间接引用已定义的全局变量。头文件中声明的变量若出现错误,编译阶段会报错,使用extern时,编译阶段不会报错,链接阶段才会发现问题。
3. 全局变量的多文件使用:全局变量可以声明在多个.C文件中,但需要确保只有其中一个文件在首次定义时赋初值,以避免链接时的错误。静态全局变量的作用域仅限于声明它的源文件,其他文件中不可访问。
4. 循环结构的差异:for(;1;)和while(1)相同,它们都表示无限循环,直到遇到break跳出循环。do-while循环与while-do的区别在于,do-while先执行一次循环体再判断条件,而while-do则是先判断条件再执行循环体。
5. 输出结果分析:给出的代码片段中,a的初始值为10。b=a++会先取a的当前值10,然后递增a为11;c=++a先递增a为11,然后取新的值赋给c;d=10*a++中,d会被初始化为10*11=110,然后a递增为12。因此,输出结果为b=10, c=12, d=120。
6. 静态变量的特性:static全局变量和局部变量在存储方式上相同,均为静态存储,但全局静态变量的作用域限定于文件级别,而局部静态变量只在定义它的函数范围内有效。静态函数则是不形成新的作用域,且在其调用结束后自动销毁,与其他函数共享静态变量。
通过这些题目,可以看出华为C语言笔试注重对基础知识的掌握,包括变量的作用域、引用规则、循环结构的理解以及基本语法的运用。此外,还测试了考生对内存管理、代码逻辑推理及编译链接过程的了解。理解并掌握这些概念是准备此类笔试的关键。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2012-04-21 上传
2017-11-30 上传
2011-10-19 上传
2011-04-01 上传
2008-11-07 上传
foreverlovepi
- 粉丝: 0
- 资源: 1
最新资源
- 几乎所有的findIndex练习:Springboard软件工程职业生涯跟踪子单元8.2的练习
- pyg_lib-0.2.0+pt20cpu-cp310-cp310-linux_x86_64whl.zip
- Gravity-Game
- LiveCue-开源
- shield-db::shield_selector:Shield DB,Dot Shield使用的广告和跟踪器的数据库
- swift-boilerplate:使用文件和项目模板节省创建Swift应用程序的时间
- espriturc:预订土耳其语课程的网站
- ANNOgesic-0.7.29-py3-none-any.whl.zip
- angular-remove-diacritics:角度服务可消除字符串中的重音符号
- 减去图像均值matlab代码-PCA-Image-Compression:PCA-图像压缩
- test-msw
- chipster-web
- smart-contract-tutorial:该存储库包含我们的文章https中使用的完整代码
- xderm-mini
- Inventory_management:Etsy小型企业的库存管理
- HFTuner:免提吉他调音器!