linuxsir首页 LinuxSir.Org | Linux、BSD、Solaris、Unix | 开源传万世,因有我参与欢迎您!
网站首页 | 设为首页 | 加入收藏
您所在的位置:主页 > Linux基础建设 >

C/C++一维数组简单介绍

时间:2019-03-11  来源:未知  作者:admin666

定义:同一种类型数据的集合

通俗的讲就是,将多个同一种类型的数据按一定的内存顺序写在一起。

注意我的几个关键字“多个”,“同一种”,“一定的内存顺序”。如果理解了这几个关键词,说明你的数组已经掌握了。

我们分开了解这几个关键词:

多个:首先数组是为了存储多个数据而产生的,如果你只有一个数据那就没必要用数组了,当然你非要定义数组存储单个数据也是不会报错的。

//eg
#include<iostream>
using namespace std;
?
void main()
{
    int a;          //等效于 int a[1];
    int num[10];    //一般用于定于多个,此处就表示,定义10个int类型的数据
                    //注意数组是从零开始计数的
}

同一种:数组最重要的特点就是将相同类型的数据放在了一起,便于以后的各种迭代处理,直接看代码更容易理解

//eg
#include<iostream>
using namespace std;
?
void main()
{
    int a[10];          //假如你现在需要十个正整型数据 先赋值再求和
    int sun = 0;        //定义sum的初始值为0
    for(int i = 0; i < 10; ++i)
    {
        a[i] = i;
    }
    for(int j = 0; j < 10; ++j)
    {
        sum += a[j];
    }
    cout << sum << endl;
}

一定的内存顺序:这块是很重要的,即数组在内存中的相邻数据之间的间隔一定的(数据类型的长度),数组和指针可以相互使用,现在很好的理解数组的内存结构,在后面指针那里就很容易学懂了。

#include<iostream>
using namespace std;
void main()
{
    int a[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };      //我们可以先去打印a[0] 与 a[9]之间的内存差看看效果
    cout << &a[0] <<"  "<< &a[9]  << endl;               七乐彩预测;   //& 在这里是取地址符
    cin.get();
}

用两个地址作差除去,size(int),看看是个什么结果。下面我将用图来解释:

C/C++一维数组简单介绍

数组的初始化

数组的初始化有很多的种方法,这里我将写出最长见的几种:

#include<iostream>
using namespace std;
int main()
{
    int a[10] = {0};    //这种方式将默认是个元素全部为零
    int b[10] = {0,1,2,3,4,5,6,7,8,9};//一一对应的方式。
    //也可以在后续的过程中给出自己的操作
    return 0;
}

这里还有二维数组未说明,后期继续,写得有问题的地方请指出,我改正,谢谢!

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

友情链接