C/C++中数组是一个很基础的知识点,把遇到的问题总结下。
1. 数组的赋值方式
1、 通过数组遍历,逐个赋值。
定义循环变量int i;
for(i = 0; i < 4; i ++)
b[i] = a[i];
该程序功能为遍历数组a,逐个赋值到数组b对应元素中。
2、 借助内存复制函数memcpy,整体赋值。
void *memcpy(void *dst, void *src, size_t size);
这个函数的功能为将src上,大小为size字节的数据赋值到dst上。
调用该函数时需要引用头文件cstring,即#include <cstring>
赋值数组的代码为
memcpy(b,a,sizeof(a));
2. 数组的初始化
C++规定,数组在函数内外初始化值是不同的,即使是main()函数也不例外,比如我们没有初始化一个int数组,如果在函数外面定义,那么int数组中的元素全为0.如果在函数里面的定义的话(包括main()函数)那int数组中的元素值 是不确定的,一般的会显示为-858993460;
3.定义动态数组
由于我们事先无法知道数组的大小,可能待输入,可能是其他变量,导致我们采用动态定义数组的方法
int size=50;
int *p=new int[size];
定义二维数组见链接,戳我
4.给链表中某数组成员赋初值时
,如下例显示数组初始值设定项值太多
例:head->arg[3][3]={0,0};其代表的是指针,指向数组的首地址,不能赋多个值。