设a[5];
字符串数组首地址是a[],scanf输入的时候不用&,那数组scanf输入为什么要加&啊?
6条回答 默认 最新
- 社区专家-Monster-XH 2023-02-13 18:07关注
这是因为数组名(在本例中为a)本身代表数组的首地址,而字符串数组由于是存储字符串,因此一个字符串数组的每一个元素都是字符串的首地址。
但是数组存储的是数字,不是字符串。因此当你使用scanf函数输入数组时,需要加&符号,以便scanf函数能够找到每个数字的内存地址。
例如:
scanf("%d", &a[0]);
这样scanf函数才能正确地输入数组a的第一个元素
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
- ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
- ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
- ¥15 帮我写一个c++工程
- ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
- ¥15 关于smbclient 库的使用
- ¥15 微信小程序协议怎么写
- ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
- ¥20 怎么用dlib库的算法识别小麦病虫害
- ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启