数组的声明、初始化、赋值
发布日期:2021-06-29 05:01:07 浏览次数:2 分类:技术文章

本文共 1363 字,大约阅读时间需要 4 分钟。

一、数组的声明

#include
int main(){ float candy[365];//通过声明告诉编译器数组元素的个数和类型 char code[12];//内含12个char类型元素的数组 int states[50];//内含50个int类型元素的数组 /*数组的编号从0开始,因此candy[0]代表数组第一个元素 candy[364]代表数组的第365个元素*/ return 0;}

二、数组的初始化(对于自动存储类型【数组在函数内部声明且声明时未使用关键字static】必须先初始化,才能使用,对于一些其他的存储类别的变量和数组,若声明时未初始化,编译器会自动把他们的值设为0)

#include
#define SIZE 4int main(){ /*完全初始化*/ int powers[8]={1,2,4,8,16,32,64}; /*部分初始化*/ int some_data[SIZE]={12,13};//推荐使用符号常量SIZE表示数组大小 /*省略方括号里的数字,让编译器自动匹配数组大小和初始化列表中的项数*/ const int days[]={31,28,31,30,31};//针对这样的数组的大小用sizeof(days)/sizeof(days[0])来计算更合适 for(int i=0;i

三、使用初始化器

#include
#define MONTHS 12int main(){ int days[MONTHS]={31,28,[4]=31,30,31,[1]=29};/*下标为4,即第五个元素指定赋值为31, 那么后面的值也随之被初始化为30,31,days[1]由于后面被初始化为29,覆盖了之前初始化为28 */ int i; for(i=0;i

四、数组的赋值

/*数组元素的赋值*/#include
#define SIZE 5int main(){ int a[SIZE]={2,3,4,5,6};//正确的初始化 int b[SIZE]; b=a;/*C不允许把数组作为一个单元赋给另一个数组*/ b[SIZE]=a[SIZE];/*数组下标越界,确保数组下标在0~SIZE-1的范围内*/ b[SIZE]={5,6,8,2};/*除初始化之外,不允许使用花括号列表的形式赋值*/ b[0]=1;//正确的赋值 b[1]=2; printf("%d %d",b[0],b[1]); return 0;}

五、指定数组的大小

#include
int main(){ float b[0];//不允许这样,数组大小必须大于0 float c[2.5];//不允许,数组大小必须为整数 double m[(int)2.5];//可以,被强制转化为整数 float d[2*3+1];//可以 float e[sizeof(int)+1];//可以 int n; scanf("%d",&n); int a[n];//C99允许这样 printf("%d\n",sizeof(a)); return 0;}

 

转载地址:https://blog.csdn.net/zhao2chen3/article/details/83189260 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:字符串的朴素字符匹配算法
下一篇:不同数据类型数组的&的用法

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月25日 23时43分21秒