个渣渣C语言之数组
---恢复内容开始---
学c语言就知道数组、指针在c中有着特殊的地位。而且是必须掌握的一项知识,学会它会让你受益无穷。
一、数组
1、数组:室友一系列相同元素构成的。它连续的存储在内存中。
2、数组的声明:
格式: 类型 数组名 [元素个数];
例 : int myarray[10];
注意:在c99之前不允许出现元素个数为变量的情况。
例:
int n = 10;
int myarray[n]; // C99之前不允许(这种声明方式不允许被初始化)
3、数组的初始化:
- int myarray[] = {1,2,3,4,5}; // 正确,这种情况下元素个数可以省略。
- int myarray [10] = {1,2,3,4,5,6,7,8,9,0}; // 一般情况,元素和元素中间用 “,”分割
- int myarray [10] = {1,2,3}; // 只初始化前三个元素。
- int myarray [10] = {[4] = 4,[6] = 6}; //第5个元素个第6个员被初始化,其他元素都为0。
- int n = 10; int myarray [n] = {1,2,3,4,5,6,7,8,9,0}; //错误 。C99之后允许变量作为数组的元素个数,但是不允许初始化这种声明。
那么如果我们在数组定义后并不对其进行初始化,数组元素的值是什么?
数组定义的时候,只是划出一片区域,冠以数组名来存储数组元素。但是在定义数组的时候并不改变这片区域里数据,也就是说在这篇区域中的值是不确定的。
4、数组的赋值
- int myarray [10] = {1,2,3,4,5,6,7,8,9,0};
- int oarray [10];
- oarray = myarray; //错误,c不支持把一个数组作为一个整体来进行赋值。
- oarray [10] = {1,2,3,4,5,6,7,8,9,0}; // 错误,c不支持一个花括号括起来进行赋值。
5、数组的边界
在使用数组的时候,需要注意数组索引不能超过数组边界。也就是说数组索引对于数组来说应该是有效的。
---恢复内容结束---
个渣渣C语言之数组的更多相关文章
- 【算法】C语言实现数组的动态分配
C语言实现数组的动态分配 作者:白宁超 2016年10月27日20:13:13 摘要:数据结构和算法对于编程的意义不言而喻,具有指导意义的.无论从事算法优化方向研究,还是大数据处理,亦或者网站开发AP ...
- C语言一维数组、二维数组、结构体的初始化
C语言数组的初始化表示方法 一.C语言一维数组初始化: (1)在定义数组时对数组元素赋以初值.如: static int a[10]={0,1,2,3,4,5,6,7,8,9}; 经过上面的定义和初始 ...
- go语言的 数组、slice、map使用(转)
golang群 点击加入 go语言的 数组.slice.map使用, 由于网上有很好的说明, 不需要再写了,请看这几篇: Go语言中的 Array, Slice和 Map 深入学习golang五篇,以 ...
- go语言 类型:数组
在go语言中数组array是一组特定长度的有序的元素集合. go的数组类型由两部分组成——类型和长度,二者缺一不可.数组本来就是一块存储相同类型元素的连续内存空间,因此决定一个数组的类型,必然需要决定 ...
- C语言基础--数组及相关
概念: 一堆相同类型的数据的有序集合 格式: 元素类型 数组名称[ 元素个数 ] 定义数组: // 定义了一个名称叫做scores的数组, 数组中可以存放3个int类型的数据 ]; // 只要定义一 ...
- 学习C语言的数组
C语言的数组 数组声明的实例:int num[3];只要记下这个模板就好. 不建议使用变量定义数组,如果使用了变量定义数组,作为数组的元素的个数,不初始化的情况下是随机值,如果初始化会直接报错 注意: ...
- 对于C语言中数组名是指针的理解
我们都知道,c语言中数组名是一个指针,比如下面这段代码 #include<iostream>using namespace std;int main(){ int a[4]={1,2,3, ...
- c语言中数组相关问题
c语言中数组相关问题: 1.数组基本定义: 相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标.组成数组 ...
- 线性表之顺序存储结构(C语言动态数组实现)
线性表的定义:N个数据元素的有限序列 线性表从存储结构上分为:顺序存储结构(数组)和 链式存储结构(链表) 顺序存储结构:是用一段连续的内存空间存储表中的数据 L=(a1,a2,a3....an) 链 ...
随机推荐
- JDBC&Oracle启动
[Wed Apr 26 2017 16:05:11 GMT+0800]PLSQL Developer连接远程oracle配置(本地不安装客户端).在windows机器上不想安装oracle或者orac ...
- Python request 和response 初使用
request的get方法r=request.get(url)构造一个向服务器请求资源的Request对象, 返回一个包含服务器资源的Response对象. Request对象由Request库自动生 ...
- .NET工行E生活接入AES加密算法的吐槽-2018
工行E生活V2版本AES加密算法 吐槽一下工行的java算法,真的是非标准的,参考了java代码,还参考了php代码终于搞定了. 真的是很坑,很坑.中间还涉及到多重加密之类的,一行行把代码翻译成C#代 ...
- 3-Fiddler修改请求或响应内容
1.修改请求内容 方法一:设置请求前断点,修改请求后发送 1)设置断点 2)选中请求,在inspectors下修改请求内容 3)修改请求后,点击Break on Response按钮,进行请求的发送 ...
- hive 函数 nvl()
首先用desc function,查看hive给出的函数解释 nvl(value,default_value) - Returns default value if value is null els ...
- js怎么实现继承?
3. js怎么实现继承? 1. 使用原型prototype 这个问题其实之前总结过了……但是面试时候有点忘……主要思想是记得的,但是不会写,还是基础太不牢靠,写的太少了.一开始因为不知道怎么能继承父类 ...
- Ubuntu18.04版本设置root账户
Linux系统下文件的权限十分重要,大多数操作都需要一定的权限才可以操作,Ubuntu18.04默认安装是没有设置root账户的,因此想要获得root账户登录可以使用以下步骤: 1.首先获得临时的 ...
- 第81节:Java中的数组
第81节:Java中的数组 本节介绍数组的基本概念,数据就是一种数据结构,可以用来存储多个数据,每个数组中可以存放相同类型的数据.比如,在学校,我们是一个班,这里的班级中每个同学都是这个班级数组中的元 ...
- linux scp 使用方法
scp虽然只有把文见发送到远端和从远端copy文件俩功能,但是常常把俩功能的先写什么给计混了,所以我就用通俗的大白话给总结了下,十分容易记忆,这里给大家分享一下.scp 我们常用的两个功能: (1)把 ...
- [Objective-C语言教程]数组(14)
Objective-C编程语言提供了一种叫作数组的数据结构,它可以存储相同类型的固定大小顺序元素的集合.数组用于存储数据集合,但将数组视为相同类型的变量集合通常更有用. 可以声明一个数组变量(例如nu ...