网络

教育改变生活

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 187|回复: 0
打印 上一主题 下一主题

【C语言】数组之间赋值

[复制链接]

686

主题

693

帖子

3101

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3101
跳转到指定楼层
楼主
发表于 6 天前 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
若定义了一个数组“int a[5]={1,2,3,4,5};”,又定义了一个数组“int b[5];”,那么如何编写程序才能将数组 a 中的数据赋给数组 b?

经常有人会这样写:
  • b = a;


这样写是错误的。前面说过,a 和 b 是数组名,而数组名表示的是数组“第一个元素”的“起始地址”。即 a 和 b 表示的是地址,是一个常数,不能将一个常数赋给另一个常数。这种错误就类似于将 3 赋给 2,所以是错误的。

正确的写法是用 for 循环,将数组 a 中的元素一个一个赋给数组b的元素
  • # include <stdio.h>
  • int main(void)
  • {
  •     int a[5 = {1, 2, 3, 4, 5};
  •     int b[5];
  •     int i;
  •     for (i=0; i<5; ++i)
  •     {
  •         b[i = a[i];
  •         printf("%d\n", b[i]);
  •     }
  •     return 0;
  • }


输出结果是:
1
2
3
4
5
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

WEB前端

QQ|手机版|小黑屋|金桨网|助学堂  咨询请联系站长。

GMT+8, 2024-12-22 09:52 , Processed in 0.033359 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表