C语言 | C/C++不能给数组整体赋值?
2022/2/28 20:22:43
本文主要是介绍C语言 | C/C++不能给数组整体赋值?,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
给数组赋值有两种情况:
(1)声明的同时初始化
int a[5]={1,2,3,4,5};
(2)声明后再初始化
int a[5];
a[0]=1;a[1]=2;a[2]=3;a[3]=4;a[4]=5;
注意!在c、c++中不允许将数组声明和整体初始化分开!
如:
int a[5];
a[5]={1,2,3,4,5}
这样做会导致语法错误!
错误分析:由于数组下标从零开始,a[5]根本就不存在!
就算存在,此时的a[5] 也只代表它自己!根本不能代表数组整体!
因为C/C++中,数组名就是数组第一个元素的地址,也就是一个常量指针,
比如,int a[100] , b[100];
则a和b都是常量指针int*const a(其值肯定是不同的),
如果你执行a = b;那就是企图修改常量指针a的值,
而在C/C++里,任何常量都是不允许被修改的。
a[1]或*a才是a中第一个元素的内容。
这篇关于C语言 | C/C++不能给数组整体赋值?的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15PingCAP 黄东旭参与 CCF 秀湖会议,共探开源教育未来
- 2024-05-13PingCAP 戴涛:构建面向未来的金融核心系统
- 2024-05-09flutter3.x_macos桌面os实战
- 2024-05-09Rust中的并发性:Sync 和 Send Traits
- 2024-05-08使用Ollama和OpenWebUI在CPU上玩转Meta Llama3-8B
- 2024-05-08完工标准(DoD)与验收条件(AC)究竟有什么不同?
- 2024-05-084万 star 的 NocoDB 在 sealos 上一键起,轻松把数据库编程智能表格
- 2024-05-08Mac 版Stable Diffusion WebUI的安装
- 2024-05-08解锁CodeGeeX智能问答中3项独有的隐藏技能
- 2024-05-08RAG算法优化+新增代码仓库支持,CodeGeeX的@repo功能效果提升