如果孤独感 发表于 2020-4-10 15:49:39

什么鬼???

2. 请问 str 是否可以写成 20?

答:可以。

因为在访问数组的元素的时候,数组名被解释为数组第一个元素的地址。

所以 str == *(str + 20) == *(20 + str) == str

疑问
这和20【str】有什么关系

ba21 发表于 2020-4-10 15:55:43

这是从哪里看来的。编译明显就通不过。

sunrise085 发表于 2020-4-10 15:56:13

C语言就是这样规定的啊。
str就是和20等价的。两种写法而已。

ba21 发表于 2020-4-10 15:57:49

sunrise085 发表于 2020-4-10 15:56
C语言就是这样规定的啊。
str就是和20等价的。两种写法而已。

请问你是从哪看来的。我也想了解下。

ba21 发表于 2020-4-10 16:05:44

又测试了下,同样的代码又行了。
这太神奇了。意思确实一样。

永恒的蓝色梦想 发表于 2020-4-10 16:06:17

ba21 发表于 2020-4-10 15:57
请问你是从哪看来的。我也想了解下。

这个很多书上都有写吧……难道不是吗?

ba21 发表于 2020-4-10 18:45:40

永恒的蓝色梦想 发表于 2020-4-10 16:06
这个很多书上都有写吧……难道不是吗?

str == *(str + 20) == *(20 + str) == str
很多书上都有说吗?

回头再仔细一下。我就说嘛,怎么一下行一下不行。人家题目明明说的是20
str 是否可以写成 20 。这个确实是可以的。

Cool_Breeze 发表于 2020-4-10 19:02:46

这样也行哦!
#include <stdio.h>
int main(int argc, char** argv)
{
        int arr;
        register unsigned char i=0;
        for (i=0;i<10;i++) arr=i;
        for (i=0;i<10;i++) printf("%d\n",*(((int*)arr)+i));
        return 0;
}

永恒的蓝色梦想 发表于 2020-4-10 19:10:00

ba21 发表于 2020-4-10 18:45
str == *(str + 20) == *(20 + str) == str
很多书上都有说吗?



我记得我很久以前看的基本书上都有写过……{:10_248:}

这个解答写错了吧……

ba21 发表于 2020-4-10 19:25:21

Cool_Breeze 发表于 2020-4-10 19:02
这样也行哦!

你说的这个和提问有关吗?

ba21 发表于 2020-4-10 19:29:21

永恒的蓝色梦想 发表于 2020-4-10 19:10
我记得我很久以前看的基本书上都有写过……

这个解答写错了吧……

这个str 和 20 确实都会学到;不过一般也不会这么写。所以不会记住。

提问者本身就把问题内容写错了。我想不应该是复制过来的。

4goodworld 发表于 2020-4-10 19:33:31

ba21 发表于 2020-4-10 16:05
又测试了下,同样的代码又行了。
这太神奇了。意思确实一样。

小甲鱼的课后习题里面提到的

Cool_Breeze 发表于 2020-4-10 19:53:17

ba21 发表于 2020-4-10 19:25
你说的这个和提问有关吗?

难道没有关系吗?

Cool_Breeze 发表于 2020-4-10 19:54:55

本帖最后由 Cool_Breeze 于 2020-4-10 20:05 编辑

永恒的蓝色梦想 发表于 2020-4-10 19:10
我记得我很久以前看的基本书上都有写过……

这个解答写错了吧……

C语言参考手册里面有写这个!

ba21 发表于 2020-4-10 20:03:32

Cool_Breeze 发表于 2020-4-10 19:53
难道没有关系吗?

没看出你发的代码和提问有关系。
str 这个错误你还没有注意到?

ba21 发表于 2020-4-10 20:04:07

4goodworld 发表于 2020-4-10 19:33
小甲鱼的课后习题里面提到的

这个错误你也还没有注意到? str

Cool_Breeze 发表于 2020-4-10 20:19:36

本帖最后由 Cool_Breeze 于 2020-4-10 20:21 编辑

ba21 发表于 2020-4-10 20:03
没看出你发的代码和提问有关系。
str 这个错误你还没有注意到?

他自己输入失误了!他前面都是这样写的20!
他提的问也是20【str】是什么关系!
改一下就好了20

ba21 发表于 2020-4-10 20:21:45

Cool_Breeze 发表于 2020-4-10 20:19
改一下就好了20

那是,改下好了,不用你说也都知道。
问题是你注意到这个错误了?

Cool_Breeze 发表于 2020-4-10 20:23:00

ba21 发表于 2020-4-10 20:21
那是,改下好了,不用你说也都知道。
问题是你注意到这个错误了?

你管这个干吗呢?
楼主不是问这个吗?
疑问
这和20【str】有什么关系
页: [1]
查看完整版本: 什么鬼???