鱼C论坛

 找回密码
 立即注册
查看: 4615|回复: 13

数组与指针的问题

[复制链接]
发表于 2013-8-31 17:28:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
有个问题请教
char *a[]={'s','w'};
char b[]={'s','w'};
printf("%c\n",a[0]);
printf("%c\n",b[0]);
这两段代码输出效果相同,
b我能理解,a不是太懂,a[0],a[1]里面不应该存放指针吗,为什么存放字符也可以,
还有输出时为什么a[0]写地址就可以了,而不是*a[0],请大神指教
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-8-31 17:43:23 | 显示全部楼层
我记得没错的话
"s"被当成是一个字符串 a[0]存放的是这个字符串的第一个字符的地址
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-31 18:01:14 | 显示全部楼层
什么版本的编译器呢? VC6.0编译还通不过啊:funk:
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-31 18:11:20 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-31 18:13:44 | 显示全部楼层
牡丹花下死做鬼 发表于 2013-8-31 17:43
我记得没错的话
"s"被当成是一个字符串 a[0]存放的是这个字符串的第一个字符的地址

哦,那第一个问题就明白了,那么a[0]既然是地址,为什么输出的是s,而不是地址值相对应的字符呢?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-31 18:15:23 | 显示全部楼层
1186324352 发表于 2013-8-31 18:13
哦,那第一个问题就明白了,那么a[0]既然是地址,为什么输出的是s,而不是地址值相对应的字符呢?

→_→ 你是以%c输出的啊 当然就是输出这个地址指向的那个内存的数据(以字符的方式)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-31 18:20:20 | 显示全部楼层
你们用的什么IDE,为什么能编译通过。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-31 21:24:49 | 显示全部楼层
牡丹花下死做鬼 发表于 2013-8-31 18:15
→_→ 你是以%c输出的啊 当然就是输出这个地址指向的那个内存的数据(以字符的方式)

为什么以%c输出就是输出这个地址指向的内存数据啊,我有没有取地址符,它怎么就自动去取地址指向的值了呢,如果那样的话,printf("%c",b)不也应该输出s吗,但是输出的是b的地址的ASC码对应字符值‘<’,b不是个地址吗,它就没有自动去获取对应的地址的字符值啊,这也说不通啊?
不好意思,小弟接触C不久,很多不懂,希望你详细解释一下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-31 21:27:07 | 显示全部楼层
liufei_vip 发表于 2013-8-31 18:20
你们用的什么IDE,为什么能编译通过。。。

http://blog.fishc.com/603.html
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-31 22:15:53 | 显示全部楼层
第一行代码是不是有问题我这也通不过编译
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-31 23:53:15 | 显示全部楼层
牡丹花下死做鬼 发表于 2013-8-31 17:43
我记得没错的话
"s"被当成是一个字符串 a[0]存放的是这个字符串的第一个字符的地址

没记错 不过你看错了 不是 "s" 而是 's'
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-31 23:53:51 | 显示全部楼层
″梦里花 发表于 2013-8-31 18:01
什么版本的编译器呢? VC6.0编译还通不过啊

请使用.c 后缀
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-9-1 00:09:49 | 显示全部楼层
1.png
2.png
有图有真相。。。
一切都在这两个图里。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-5 23:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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