c++
int a[]={1,2,3}
int a[10]={0};
int a[5];
× int a[];
ps:数组名不能自增,a++错,a+1对
数组下标的下限是 0
1、int(p)[4];———ptr为指向含4个元素的一维整形数组的指针变量(是指针)
2、int p[4];———-定义指针数组p,它由4个指向整型数据的指针元素组成(是数组)
3、int()[4];————实际上可以看作是一种数据类型。也就是第一个(int(p)[4];)
char* p= newchar[100] |
---|
定义
形参写法:
int a[][5];√ int a[5][];×
int (*s)[5];√
定义:
int a[][3]={};√
“int * p=new int(10);”表示动态分配1个整型内存空间,初值为10;
地址,引用
int a; &ra=a;//引用
int a; ra=&a;//获得地址
字符串数组
A:char s[80] = {“A”, “B” ,”C”}
后面是对数组元素进行初始化,而每个元素是字符所有应该用单引号。
B:char s[80]; s = {‘A’, ‘B’,’C’}
这个的错误是由于对数组初始化必须在定义的时候,否则不能对数组进行像上面这样的整体赋值,只能对单个元素进行赋值。
char s[80]; s = “ABC”;
这个的错误原因和B类似。
char s[80] =”ABC”;
对字符串进行sizeof操作的时候,会把字符串的结束符”\0”计算进去的,进行strlen操作求字符串的长度的时候,不计算\0的