相关疑难解决方法(0)

为什么我不能像C中的指针一样处理数组?

我在SO上看到了很多这个问题.也许没有那么多的话......但是一次又一次地存在关于数组如何与指针不同的混淆.所以我想我会花一点时间来问这个问题.

出于本Q&A的目的,我们将假设一个32位系统,并且已声明以下内容:

char * ptr = "hello";
char arr[10] = "hello";
int iarr[10] = {0};
Run Code Online (Sandbox Code Playgroud)

这是一个问题列表,可以推测我在SO上看到的困惑.当我看到新的问题时,我会添加到我的问答清单中(其他人也可以随意,如果你发现任何错误,请纠正我!)

  1. 指针和数组不是基本相同的东西吗?
  2. 追问:既*(ptr)*(arr),或ptr[0]arr[0]给予同样的事情,为什么呢?
  3. 怎么来arr&arr同样的价值?
  4. 跟进:为什么我得到不同的打印值arr+1vs &arr+1

c arrays pointers memory-address dereference

6
推荐指数
1
解决办法
4053
查看次数

标签 统计

arrays ×1

c ×1

dereference ×1

memory-address ×1

pointers ×1