诺瓦星云面试汇总

2023-10-09 00:59
文章标签 面试 汇总 诺瓦 星云

本文主要是介绍诺瓦星云面试汇总,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1、C语言向一个内存地址写值,

2、申请释放内存

3、makefile

4、socket   I/O复用

5、strcpy与strcat

6、内存的分配

7、new 和  malloc

8、Tcp和udp的区别

9、嵌入式linux的调试方式

10、iic  上拉电阻的作用

11、指针常量与常量指针

12、内存泄漏

13、野指针

14、链表和数组的区别

15、反转链表

16、Linux gcc编译命令

17、spi(多少根线,时序等) iic(多少根线,时序等)

18、有没有用过示波器,逻辑分析仪

19、说一下server端网络编程的步骤

20、static,const,volatile关键字

21、static关键字在c语言中和c++中有何不同

25、如果大量频繁的申请堆空间会发生什么?

29、linux内核,TCP/IP中源socket怎么回事,三种socket报文模式

31、内存拷贝函数与字符串拷贝函数

32、查找文件的命令

33、管道

34、内核与用户的转换

35、互斥量与信号量的底层

36、OSL七层模型、五层模型

37、冒泡排序

38、查看tty设备方法

39、数组与指针的区别


1、C语言向一个内存地址写值,

int main() {int value = 42;int *ptr = (int *)0x12345678;  // Replace with the desired memory address*ptr = value

2、申请释放内存

申请内存int *dynamicArray  = (int*)malloc(size *sizeof(int));释放内存  free(dynamicArray)

3、makefile

makefile 我只会模仿改写makefile的基本思路 是查第一行目标文件有没有的依赖文件,如果没有,就在下面的代码的目标文件中查找,有就执行相应的代码

clean:
       rm -f myprogram
 行 make clean 就会执行 clean 目标,删除名为 myprogram 的文件

all: main.c utils.c   (all 默认)
     gcc -o myprogram main.c utils.c
 test: myprogram(test  目标名字   myprogram  依赖名字)
            ./myprogram test_input.txt
执行make   执行all下命令
执行 make test  执行test下命令

引入库
  

1、写好路径

2、库和路径添加到链接命令中

导入模板
 
include common.mk  ,这样makefile就导入模板了

4、socket   I/O复用

select函数,可以监听的数目有限制,并且每次都调用select函数的时候都需要将fd集合从用户态拷贝到内核态 ,同时每次调用select都需要在内核遍历传递进来的所有fd,这个开销在fd很多时也很大

 

2、po'll 开销也比较大,但是因为fd使用链表这样的话,数目限制就不存在了

 

3、epoll将主动轮询变成被动通知,当有事情发生时,接收到通知后再去处理,也就是epoll会把哪个流发生哪种i/o事件通知我们,epoll是事件驱动(每个事件关联到fd),epoll底层是红黑树,epoll内部使用事件驱动的机制,内核中维护了一个链表来记录就绪事件,当某个socket有事件发生时,通过回调函数内核将其加入到就绪事件链表中,

当用户调用epoll_wait()函数时,只会返回有事件发生的文件描述符的个数,不需要像select和poll那样进行轮询,大大提高了检测的效率

5、strcpy与strcat

strcpy  地址拷贝

strcat   值拷贝

6、内存的分配

1、堆(地址从上到下递减)

2、栈(地址从上到下递增)

3、全局变量区\静态变量区(未初始化bss  初始化data)

4、文本区(代码本文 + 常量)

7、new 和  malloc

两个分配的都是在堆空间,new 不需要指定空间大小,new 分配完还会调用构造函数初始化

8、Tcp和udp的区别

TCP不能直接传输,需要连接具有可靠性,适合高质量传输,但是速度慢
UDP可以直接传输,但是不安全,速度也快

9、嵌入式linux的调试方式

应用中 printf  
驱动内核中  printk

gdb调试运行

10、iic  上拉电阻的作用

1、高电平

 2、开漏输出

11、指针常量与常量指针

指针常量 :指针是一个常量,指针指向不能变

常量指针:指针指向的是一个常量

12、内存泄漏

是指程序在申请内存后无法释放已申请的内存空间,导致系统无法及时收回内存并且分配给其他进程使用

1、动态分配的内存没有被释放:当使用关键字 new 或 malloc 分配内存时,应该使用对应的 delete 或 free 函数来释放内存。如果没有正确释放,就会导致内存泄漏

2、丢失对分配内存的指针

3、c++中子类析构函数没有设置为虚函数

13、野指针

野指针不是NULL指针,是指向被释放的或者访问受限的内存的指针

1、指针变量没有被初始化,任何刚创建的指针不会自动成为NULL

2、指针被free或delete之后,没有置NULL

3、指针操作超越了变量的作用范围,比如要返回指向栈内存的指针或引用,因为栈内存在函数结束时会被释放

14、链表和数组的区别

访问元素效率:

  • 数组:由于数组的元素在内存中是连续存储的,访问元素的效率非常高,只需要通过索引即可。

  • 链表:链表的元素分散在内存中不同位置,访问元素需要按照节点指针的顺序遍历,效率较低。

15、反转链表

需要三个指针,一个pre指针指向反转的前一个节点,cur指向要反转的节点,然后设置有一个temp指针指向需要反转的下一个节点,用来使得cur指针移动,因为我们反转之后,无法使用next指针访问到后一个节点

16、Linux gcc编译命令

1、预处理 gcc -E hello.c -o hello.i(头文件展开,进行源文件中的宏替换,注释过滤)

2、编译    gcc -S hello.i -o hello.s(将源文件编译成汇编文件)

3、汇编    gcc -c hello.s -o hello.o(将汇编文件转换成二进制文件)

4、链接   gcc hello.o -o hello(将二进制文件打包成可执行文件

17、spi(多少根线,时序等) iic(多少根线,时序等)

18、有没有用过示波器,逻辑分析仪

19、说一下server端网络编程的步骤

20、static,const,volatile关键字

21、static关键字在c语言中和c++中有何不同

  1. 类的静态成员变量和函数: 在 C++ 语言中,static 关键字被广泛用于类的静态成员变量和静态成员函数。静态成员变量是类的所有对象共享的变量,而静态成员函数不属于任何特定对象,可以直接通过类名调用。

  2. 函数内的静态变量: C++ 中的函数内的静态变量的作用与 C 语言类似,仍然将变量的作用域限制在函数内,并保持其值在函数调用之间不变。

  3. 命名空间中的静态变量: 在 C++ 中,static 关键字还可以用于命名空间内的静态变量,这将限制变量的作用域在命名空间内,并且在不同文件中可以共享

22、问了一个结构体问占用内存大小,如何改变内存大小(更改成员变量位置,或者取消结构体对齐)

23、栈和队列的区别

24、编译完的程序在内存中的分布

25、如果大量频繁的申请堆空间会发生什么?

内存泄漏

堆碎片化

性能下降

系统崩溃

29、linux内核,TCP/IP中源socket怎么回事,三种socket报文模式

源socket"通常指的是套接字(socket)的一个端点

三种报文形式
面向连接的套接字(SOCK_STREAM)

面向消息的套接字(SOCK_DGRAM)

原始套接字(Raw Socket

30、共享内存函数

31、内存拷贝函数与字符串拷贝函数

memcpy():用于从源内存地址复制一定数量的字节到目标内存地址。

字符串拷贝  strcpy

32、查找文件的命令

find /path/to/search -name "filename.ext"
 

33、管道

linux  命令中的管道

    了命令行中的管道(|)用于将一个命令的输出连接到另一个命令的输入外

  

34、内核与用户的转换

1、中断

2、异常

3、系统调用

35、互斥量与信号量的底层

通常涉及原子操作和线程阻塞。

36、OSL七层模型、五层模型

37、冒泡排序

38、查看tty设备方法

39、数组与指针的区别

  • 数组的大小固定,而指针可以动态指向不同的数据。

  • 内存布局:数组的元素在内存中是连续存储的,而指针可以指向任何内存位置。

  • 访问方式:数组通过下标直接访问元素,而指针需要通过解引用操作来访问所指向的数据。

  • 声明方式:数组声明时需要指定大小和数据类型,而指针声明只需要指定数据类型。

这篇关于诺瓦星云面试汇总的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/169208

相关文章

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

java面试常见问题之Hibernate总结

1  Hibernate的检索方式 Ø  导航对象图检索(根据已经加载的对象,导航到其他对象。) Ø  OID检索(按照对象的OID来检索对象。) Ø  HQL检索(使用面向对象的HQL查询语言。) Ø  QBC检索(使用QBC(Qurey By Criteria)API来检索对象。 QBC/QBE离线/在线) Ø  本地SQL检索(使用本地数据库的SQL查询语句。) 包括Hibern

贝壳面试:什么是回表?什么是索引下推?

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50+)中,最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格,遇到很多很重要的面试题: 1.谈谈你对MySQL 索引下推 的认识? 2.在MySQL中,索引下推 是如何实现的?请简述其工作原理。 3、说说什么是 回表,什么是 索引下推 ? 最近有小伙伴在面试 贝壳、soul,又遇到了相关的

【Kubernetes】常见面试题汇总(三)

目录 9.简述 Kubernetes 的缺点或当前的不足之处? 10.简述 Kubernetes 相关基础概念? 9.简述 Kubernetes 的缺点或当前的不足之处? Kubernetes 当前存在的缺点(不足)如下: ① 安装过程和配置相对困难复杂; ② 管理服务相对繁琐; ③ 运行和编译需要很多时间; ④ 它比其他替代品更昂贵; ⑤ 对于简单的应用程序来说,可能不

毕业前第二次面试的感慨

距面试已经过去了有几天了,我现在想起来都有说多的恨感慨。 我一直都是想找刚刚起步的企业,因为这能让我学到更多的东西,然而正好有一家企业是刚起步的,而且他还有自己的产品专利,可以说这是一家,即是创业又是刚起步的公司,这家公司回复了我投给他的简历,这家企业想进一步了解我的情况,因为简历上我符合这家企业的基本要求,所以要进一步了解。 虽然面试的过程中,他给我的面试题,我做得并不是很理想,

【Kubernetes】常见面试题汇总(一)

目录 1.简述 etcd 及其特点? 2.简述 etcd 适应的场景? 3.简述什么是Kubernetes? 4.简述 Kubernetes和 Docker的关系? 1.简述 etcd 及其特点? (1)etcd 是Core0s 团队发起的开源项目,是一个管理配置信息和服务发现(service discovery)的项目,它的目标是构建一个高可用的分布式键值(keyvalue)数据

腾讯社招面试经历

前提:本人2011年毕业于一个普通本科,工作不到2年。   15号晚上7点多,正在炒菜做饭,腾讯忽然打电话来问我对他们的Linux C++的职位是否感兴趣,我表达了我感兴趣之后,就开始了一段简短的电话面试,电话面试主要内容:C++和TCP socket通信的一些基础知识。之后就问我一道算法题:10亿个整数,随机生成,可重复,求最大的前1万个。当时我一下子就蒙了,没反应过来,何况我还正在烧

完整的腾讯面试经过

从9月10号开始到现在快两个月了,两个多月中,我经历数次面试和笔试,在经历这些的同时积累了不少的经验,也学到了不少东西,在此把它记录下来,算是和一起找工作中的同学一起共勉吧。我是本校的学生,专业是机械制造及其自动化,找工作的主要目标是计算机软件类和机械制造方向的国内的企业,所以意向去外企的同学就不必浪费时间看这些面经啦,想去国内IT企业的同学可以继续看下去。本贴中我把最近的腾讯面试经过写下

IEEE会议投稿资料汇总http://cadcg2015.nwpu.edu.cn/index.htm

最近投了篇IEEE的顶级会议文章,一下是比较有用的一些资料,以供参考。 1.会议主页:http://cadcg2015.nwpu.edu.cn/index.htm     (The 14th International Conference on Computer-Aided Design and Computer Graphics (CAD/Graphics 2015)) 2.I