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

数组

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

目录

数组

1、数组是什么?

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

3、数组名是什么?

1、数组是什么?

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

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

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

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

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

下面例子可以说明

3、数组名是什么?

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

但有两个例外:

  • sizeof(数组名) 的时候,数组名表示整个数组,所以 sizeof(数组名) 计算的是整个数组的大小,单位是字节
  • &数组名 的时候,数组名代表整个数组,所以&数组名取出的是整个数组的地址。
相关推荐
CCPC不拿奖不改名9 分钟前
网络与API:从HTTP协议视角理解网络分层原理+面试习题
开发语言·网络·python·网络协议·学习·http·面试
程序员飞哥16 分钟前
几年没面试,这次真的被打醒了!
java·面试
爱吃生蚝的于勒1 小时前
【Linux】进程间通信之匿名管道
linux·运维·服务器·c语言·数据结构·c++·vim
乌暮1 小时前
JavaEE初阶---《JUC 并发编程完全指南:组件用法、原理剖析与面试应答》
java·开发语言·后端·学习·面试·java-ee
CCPC不拿奖不改名1 小时前
计算机网络:电脑访问网站的完整流程详解+面试习题
开发语言·python·学习·计算机网络·面试·职场和发展
鹏程十八少1 小时前
破解Android悬浮窗遮挡无障碍服务难题:我在可见即可说上踩过的坑
android·前端·面试
Moment1 小时前
富文本编辑器技术选型,到底是 Prosemirror 还是 Tiptap 好 ❓❓❓
前端·javascript·面试
!停1 小时前
C语言单链表
c语言·数据结构·算法
南行*1 小时前
C语言Linux环境编程
linux·c语言·开发语言·网络安全
你怎么知道我是队长2 小时前
C语言---printf函数使用详细说明
c语言·开发语言