c语言程序设计--数组里面考察最多的一个知识点-考研冲刺复试面试问答题。

数组

关于数组的知识脑海里面先有一个大概,知道定义和存储方式

目录

数组

1、数组是什么?

2、strlen和sizeof的区别是什么?

3、数组名是什么?

1、数组是什么?

定义:数组是一组相同类型元素的集合。数组的元素在内存中是连续存放的

例如数组可以将十个成绩值存储在内存的一个连续区域中,使用一个统一的名字来标识这组相同类型的数据,这个名字称为数组名 。构成数组的每个数据项称为数组元素。 C程序通过数组的下标实现对数组元素的访问。

比如int arr5; 代表在空间里面开辟一片连续的空间,里面存放了5个整型的数据,数组名字是arr,类型是int,元素个数是5。

2、strlen和sizeof的区别是什么?

  1. strlen与sizeof本身没有什么关联。
  2. strlen是求字符串长度的,只针对字符串求长度,求的是'\0'之前的字符个数。它是库函数,使用时需要引用头文件。
  3. sizeof是计算变量、数组、类型的大小。单位是字节,是计算空间的,所以注意字符串里面隐身的'\0'。他是操作符,不是库函数。

下面例子可以说明

3、数组名是什么?

数组名是数组首元素的地址,

但有两个例外:

  • sizeof(数组名) 的时候,数组名表示整个数组,所以 sizeof(数组名) 计算的是整个数组的大小,单位是字节
  • &数组名 的时候,数组名代表整个数组,所以&数组名取出的是整个数组的地址。
相关推荐
码匠许师傅2 分钟前
【C++ 面试真题】聊聊 volatile 和 mutable
开发语言·c++·面试
(Charon)11 分钟前
【C++】线程安全队列(二):生产者消费者模型与 condition_variable 阻塞等待
c语言·开发语言·c++
黄敬峰1 小时前
Harness 工程:用 LLM 当评委,自动生成、评测、择优一条龙
面试
ocean21032 小时前
八股刷题之:变体树
面试·面试题·面试真题·变体树·八股精·深度拓展·高效刷题
何时梦醒2 小时前
第三篇:React 组件化开发 — 函数即组件的哲学与实践
react.js·面试·typescript
胡萝卜术2 小时前
编译期与运行期的双重防线:从 TypeScript 类型之争到 LLM 输出的自动化择优
前端·设计模式·面试
wuminyu2 小时前
JDK21解决虚拟线程IO阻塞原理剖析
java·linux·c语言·jvm·c++
用户852495071842 小时前
Harness 工程:用工程化手段驾驭 LLM,而不是迷信一次回答
面试
Dr.kangder2 小时前
嵌入式面试总结(一)——嵌入式系统实时性
面试·职场和发展·架构·嵌入式·虚拟化
何时梦醒3 小时前
TypeScript 类型系统核心:type 与 interface 全方位深度对比(附实战案例)
前端·面试·typescript