嵌入式笔试刷题(第54天)

第11题

题目:Assert(bool) 是什么?需要包含什么头文件?如何使 assert 不生效?

答案:

  • Assert 是一个宏;
  • 需要包含头文件 <assert.h>
  • 若不希望 assert 生效,在头文件前加上 #define NDEBUG

解析:assert 宏用于在调试中断言条件成立。定义 NDEBUG 后宏失效,不执行断言。

第12题

题目:面向对象的三个基本特征。

答案:

封装、继承、多态

解析:

  • 封装:数据和行为打包成类;
  • 继承:子类复用父类属性和行为;
  • 多态:相同接口调用不同实现(如虚函数机制)。

第13题

题目:输出什么?

main()
{
    int a[7] = {1,2,3,4,5,6,7};
    int *ptr = (int *) (&a + 1);
    printf("%d %d", *(a+1), *(ptr-1));
}

答案:

2 7

解析:

  • a + 1 是数组第二个元素:2;
  • &a + 1 跨越整个数组,指向数组结尾后,再减1回到最后一个元素,即 7。

第14题

题目:以下重定向符表示什么意思?

答案:

1>    标准输出重定向到文件  
2>    标准错误重定向到文件  
2>&1  把标准错误重定向到标准输出  
4<&0  把文件描述符4复制为标准输入(fd 0)  
cat file1 file2 > file3    把 file1 和 file2 合并,重定向输出到 file3(覆盖)  
cat file1 file2 >> file3   把 file1 和 file2 合并,追加输出到 file3(不覆盖)

第15题

题目:操作符优先级从高到低排列。

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

嵌入式笔试专栏 文章被收录于专栏

本专栏系统整理了嵌入式方向笔试中常见的知识点和高频考题,涵盖基础理论、常用算法、C语言陷阱、操作系统原理、驱动开发、常见外设通信协议(如 I2C/SPI/UART)、RTOS、Linux 内核、以及实用电路知识等内容。

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务