恒玄科技嵌入式软件开发笔试 10-13

《嵌入式软件开发笔试与面试手册》https://blog.nowcoder.net/zhuanlan/jvN8gj

《软件开发笔试汇总》https://blog.nowcoder.net/zhuanlan/0oDWVm

全是简答题

1.写出下面代码的执行结果

int main()
{
	int a= 2;
	if(a & 1 ==0)
		printf("a & 1 == 0");
	else
		printf("a & 1 != 0");
	return 0;
}

 a & 1 != 0

解释:由于运算符的优先级,表达式 1 == 0 首先被计算,其结果是 false 或 0。因此,这个条件实际上变为 if (a & 0),这显然总是为 0(即 false)。

 

2.4字节对齐的32位系统中下,有结构体:

struct TEST

{

char c;

int i;

} *t;

如果t = (struct TEST *)0x1000;那么:

sizeof(t)= 4

t +4= 0x1020

解释:

t 是一个指向结构体 TEST 的指针。在32位系统中,所有指针的大小都是4字节,不论它们指向何种数据类型。因此,sizeof(t) 是4字节。

char c; 占用1个字节,但由于后续的 int 类型需要按4字节对齐,因此在 char 和 int 之间会有3个字节的填充。

对于指针 t,t + 1 增加的是一个 struct TEST 的大小,即8字节。因此,t + 1 将是地址 0x1000 + 8 = 0x1008。所以 t + 4 将是 0x1000 + 4 * 8 = 0x1020

3.指出下面代码中的错误

void init_data(char*p, size_t len){
	int i;
	p =(char *)malloc(len);
	for (i = 0; i <= len; i++){
		p[i]= '0' + i%10;
	}
}
int main(void)
{
	char *m;
	init_data(m,100);
	printf("%s\n", m);
	return 0;
}

 

1init_data(m,100);改为init_data(&m,100); p =(char *)malloc(len);改为p =(char *)malloc(len+1);

2、数组越界:for (i = 0; i <= len; i++)中的循环条件使得当i = len时,代码试图访问p[len],这是越界的。应该使用i < len作为循环条件。

3、没有包含必要的头文件:malloc是在stdlib.hprintf函数需要#include <stdio.h>

4、没有释放内存:代码分配了内存,但在main函数结束时并没有释放它。这会导致内存泄漏。

 

4、指出下面程序printf结果

unsigned short app_gsound_env_mtu;
unsigned char app_gsound_ble_get_mtu(void)
{
	retur

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

本专栏主要发布嵌入式软件开发相关岗位2023年(2024届)的笔试真题(嵌入式软件开发、通用软件开发、C/C++软件开发、算法工程师、数据开发、测试开发等)主要是算法编程题,其中一些岗位笔试含有对应的选择题、填空题、简单题。

全部评论

相关推荐

08-28 16:31
已编辑
西南大学 硬件开发
已投递今天之前:1、深圳万讯自控股份有限公司-嵌入式开发工程师(瞎投的,没了解过),应届生,进度:已提交。2、中国电子科技集团公司第十研究所-应用软件开发&nbsp;(试一下),应届生,进度:评估中。3、中国航空无线电电子研究所-硬件工程师(试一下),应届生,进度:已提交。4、芯源系统有限公司-嵌入式软件工程师&nbsp;(听说不错,想进),应届生,进度:评估中。5、芯原微电子(上海)股份有限公司-软件工程师&nbsp;(以为芯源,了解了也好像还可以),应届生,进度:评估中(应该是海笔,技术题全英文,很多乱选的)6、国科微电子&nbsp;微信公众号,进度:已被刷。8.251、联芸科技-嵌入式软件工程师(工资很高),BOSS看到,微信公众号投递,进度:已投递。2、自动化所-嵌入式软件工程师&nbsp;(军工,网评感觉不太好),BOSS,进度:hr要了简历。3、恒玄科技-软件工程师(试一下),BOSS,进度:未读。4、旭创科技-软件开发(试一下),应届生,进度:已提交。8.28恒玄科技-软件工程师(试一下),BOSS,进度:已拒绝英杰电气股份-fpga软件工程师(他自己邀我投的,不太了解),应届生,进度:感兴趣,但没消息,主动去问了芯源系统有限公司-嵌入式软件工程师&nbsp;(发笔试,28,海笔),应届生,进度:评估中。为什么大多数都有反应呢?是我姿势有问题?
点赞 评论 收藏
分享
评论
9
23
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务