#include<stdio.h>
int main(){
//第一种
int arr[3]={5,6,70};
//第二种
int arr2[3];//不赋值必须写长度
arr2[0]=5;
arr2[1]=6;
arr2[2]=70;
//第三种
int arr3[]={5,6,70};
printf("arr3[1]=%d\n",arr3[1]);
// int arr4[];//错误
// 没有意义:
// int arr4[]={};
// printf("arr4[0]=%d\n",arr4[0]);
// arr4[1]=5;
// printf("arr4[1]=%d\n",arr4[1]);//这样可以,为什么
// 数组的长度必须是常量
int count=3;
// int arr5[count];//错误的定义
// 数组的长度是变量要这样定义:
int arr5[count];
arr5[0]=90;
arr5[1]=80;
arr5[2]=60;
printf("arr5的地址%p\narr5第一个元素的地址%p\narr5的数组名取地址%p\n",arr5,&arr5[0],&arr5);//数组名代表数组第一个元素的地址
// 传递数组的时候传递的是地址,是指针类型
// 如果需要数组长度需要额外传递
int len=sizeof(arr5)/sizeof(int);
printf("arr5的长度是%d\n",len);
return 0;
} |
|