数组之赋值

1、数组赋值问题

需要整体赋值时只可以在定义的同时整体赋值,或者用内存拷贝函数

正确:

int a[10]={0,1,2,3,4,5,6,7,8,9};

char *week_day[8]= 

{"sunday", 

"monday", 

"tuesday",

"wednesday", 

"thursday", 

"friday", 

"saturday", 

NULL 

}; /* 说明指针数组。数组中的每个元素指向一个字符串 */ 

struct student

{

 long num;

   char name[20];

char sex;

   char addr[20];

}

struct student  students[3]={ {10101, "Li Lin", 'M', "Beijing"},{10102, "zhang",  'F',  "shanghai"} ...};

struct 

{

 long num;

   char name[20];

char sex;

   char addr[20];

 students[3]={ {10101, "Li Lin", 'M', "Beijing"},{10102, "zhang",  'F',  "shanghai"} ...}


错误:

   int a[10];   

 a[10]={0,1,2,3,4,5,6,7,8,9};



可以只给一部分元素赋值,对全部数组元素赋值时可以不指定数组长度, 但是,既不赋初值,也不指定长度是错误的。

正确:

 int a[10]={5,8,7,6};后面没有赋值的元素值默认为0。

   int a[10]={0,1,2,3,4,5,6,7,8,9};

可以写成 int a[]={0,1,2,3,4,5,6,7,8,9};

   char a[]="happy";

   char a[]={"happy"}; 注意,因为字符串结尾自动加'\0',所以char a[]="happy";长度为6,不是5。

   char a[]={'h','a','p','p','y'};注意,长度为5

char *week_day[8];

char * week_day []=

{"sunday", 

"monday", 

"tuesday",

"wednesday", 

"thursday", 

"friday", 

"saturday", 

NULL 

};


int *p[10];//指针数组,含有10个指针元素

错误:

int a[];

char *week_day[];





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值