嵌入式软件测试工程师面试题
时间: 2023-08-19 15:06:24 浏览: 182
嵌入式工程师面试题
回答: 嵌入式软件测试工程师面试题可以包括以下几个问题:
1. 请解释以下变量和指针的定义:
- 一个整型数:int a;
- 一个指向整型数的指针:int *a;
- 一个指向指针的指针,它指向的指针是指向一个整型数:int **a;
- 一个有10个整型数的数组:int a[10];
- 一个有10个指针的数组,该指针是指向一个整型数的:int *a[10];
- 一个指向有10个整型数数组的指针(数组指针):int (*a)[10];
- 指向函数的指针,该函数有一个整型参数并返回一个整型数:int (*a)(int);
- 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数:int (*a[10])(int). [1]
2. 给定一个整型变量a,写两段代码,第一个设置a的bit 3,第二个清除a的bit 3,同时保持其他位不变。[1]
设置a的bit 3的代码:a |= (1 << 3);
清除a的bit 3的代码:a &= ~(1 << 3);
3. 运行Test函数会有什么样的结果?[2]
运行Test函数会导致程序崩溃,因为GetMemory并不能传递动态内存,所以Test函数中的str一直都是NULL。而strcpy(str, "hello world");会导致程序崩溃。
4. 在嵌入式系统中,经常需要访问特定的内存位置。请写一段代码,将绝对地址为0x67a9的整型变量的值设置为0xaa55。假设编译器是一个纯粹的ANSI编译器。[3]
代码如下:
volatile int *ptr = (volatile int *)0x67a9;
*ptr = 0xaa55;
以上是一些可能出现在嵌入式软件测试工程师面试中的问题和答案。
阅读全文