c - 声明一个字符串数组后不写任何东西可以吗?
问题描述
我在讲座中看到了这段代码
char array[1000] = "";
然后它将把字符串放在这个数组中,所以我知道这就像数组的前向声明。
但是为什么不写
char array[1000];
并像上面那样写?
两个代码之间有什么区别,之前代码的功能是什么?
解决方案
两种方式在编译器方面都工作得很好。
但在第一种情况下,分配了空字符串,它正在删除数组中包含的“垃圾”数据并将其设置为空数组。
我没有其余代码的上下文。但重要的是它以空字符串开始,而不仅仅是随机数据。
推荐阅读
- python - 尽管已安装 python 模块,但无法导入它们
- firebase - 为什么 Cloud Firestore 不能与颤振一起使用?
- xcode - Xcode 12.3 SwiftUI Preview 1 of "Content View Previews" 在任何目标中都找不到
- javascript - Mapbox GL JS v2.0 问题,geojson 源上的填充层“闪烁”
- android - 如何在sqlite中保存android复选框状态?
- python - 合并字典中的值
- python - MATLAB 转换为 Python 进行循环转换
- xaml - ffimageloading:CachedImage 图像不适合网格
- arrays - 如何对数组对象进行分组和排序
- list - 在 Racket 中将列表拆分为 posn