C语言面试题(一)_千峰教育c语言面试题一

本文详细介绍了C语言中内存的基本概念、#include指令的区别、变量命名规则、数据类型、数组特点、函数定义与声明、指针与指针数组、内存分区以及在使用realloc时的注意事项。同时提及网络安全面试资源和学习路径建议。
摘要由CSDN通过智能技术生成

内存的最⼩存储单位为 ⼆进制位, 内存的最⼩计量单位 字节

3、#include<> 与#include ""的区别?

include<>到系统指定⽬录寻找头⽂件,#include ""先到项⽬所在⽬录寻找头⽂件,如果没有找再到系统指定的⽬录下寻找

4描述⼀下变量的命名规则

变量名有字⺟、数值、下划线组成,但不能以数值开头

5、变量的声明与定义有啥区别?

声明变量 不需要 建⽴存储空间, 变量的定义需要建⽴存储空间

6、谈谈c语⾔中有符号和⽆符号的区别?

有符号:数据的最⾼位为符号位,0表示正数,1表示负数

⽆符号:数据的最⾼位不是符号位,⽽是数据的⼀部分

7、谈谈计算机中补码的意义

统⼀了零的编码

将符号位与其他位统⼀处理将减法运算转换成加法运算

8、谈谈数组的特点

同⼀个数组所有的成员都是相同的数据类型,同时所有的成员在内存中的地址是连续的

9数组的分类

数组的分类主要是:静态数组、动态数组两类。

静态数组:类似int arr[5];在程序运⾏就确定了数组的⼤⼩,运⾏过程不能更改数组的⼤⼩。

动态数组:主要是在堆区申请的空间,数组的⼤⼩是在程序运⾏过程中确定,可以更改数组的⼤⼩。

10描述⼀下⼀维数组的不初始化、部分初始化、完全初 始化的不同点

不初始化:如果是局部数组 数组元素的内容随机 如果是全局数组,数组的元素内容为0

部分初始化:未被初始化的部分⾃动补0

完全初始化:如果⼀个数组全部初始化 可以省略元素的个数 数组的⼤⼩由初始化的个数确定

11、谈谈数组名作为类型、作为地址、对数组名取地址的 区别?

数组名作为类型:代表的是整个数组的⼤⼩

数组名作为地址:代表的是数组⾸元素的地址

对数组名取地址:代表的是数组的⾸地址

12、谈谈你对⼆维数组在物理上以及逻辑上的数组维度理解

⼆维数组在逻辑上是⼆维的,在物理上是⼀维的

13、描述⼀下函数的定义与函数的声明的区别

函数定义:是指对函数功能的确⽴,包括指定函数名、函数类型、形参及其类型、函数体等,它是⼀个完整的、独⽴的函数单位。

函数的声明:是把函数的名字、函数类型以及形参的个数、类型和顺序(注意,不包括函数体)通知编译系统,以便在对包含函数调⽤的语句进⾏编译时,据此对其进⾏对照检查(例如函数名是否正确,实参与形参的类型和个数是否⼀致)

14、描述⼀下指针与指针变量的区别

指针:没存中每⼀个字节都会分配⼀个32位或64位的编号,这个编号就是地址, ⽽指针就是内存单元的编号。

指针变量:本质是变量 只是该变量存放的是空间的地址编号

15、描述⼀下32位或64位平台下指针的⼤⼩

32位平台:任意类型的指针⼤⼩为4字节

64位平台:任意类型的指针⼤⼩为8字节

16、描述⼀下指针数组的概念

指针数组本质是数组,只是数组的每个元素是⼀个指针(地址)

17描述⼀下普通局部变量、普通全局变量、静态局部变量、静态全局变量的区别

普通局部变量: 存在栈区、不初始化内容随机、只在定义所在的复合语句中有效、符合语句结束变量空间释放

普通全局变量 :存在全局区、不初始化内容为0、进程结束空间才被释放,能被当前源⽂件或其他源⽂件使⽤,只是其他源⽂件使⽤的时候,记得使⽤extern修饰

静态局部变量: 存在全局区、不初始化内容为0、整个进程结束空间才被释放,只能在定义所在的复合语句中有效

静态全局变量 :存在全局区、不初始化内容为0、整个进程结束空间才被释放,只能被当前源⽂件使⽤

18描述⼀下内存分区

程序在运⾏前:分为代码区、BSS段(未初始化数据区)、data段(初始化数据区)

程序在运⾏后:堆区、栈区、全局区(静态区)、⽂字常量区、代码区

19在使⽤realloc给已分配的堆区空间追加空间时需要注意啥?

记得⽤指针变量保存realloc的返回值

还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!

王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。

对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!

【完整版领取方式在文末!!】

93道网络安全面试题

内容实在太多,不一一截图了

黑客学习资源推荐

最后给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

😝朋友们如果有需要的话,可以联系领取~

1️⃣零基础入门
① 学习路线

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

image

② 路线对应学习视频

同时每个成长路线对应的板块都有配套的视频提供:

image-20231025112050764

2️⃣视频配套工具&国内外网安书籍、文档
① 工具

② 视频

image1

③ 书籍

image2

资源较为敏感,未展示全面,需要的最下面获取

在这里插入图片描述在这里插入图片描述

② 简历模板

在这里插入图片描述

因篇幅有限,资料较为敏感仅展示部分资料,添加上方即可获取👆

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值