【问题标题】:I want to know something about pointers in C我想知道一些关于 C 中的指针的事情
【发布时间】:2016-01-23 15:13:51
【问题描述】:

p 是数组上的指针

int array[] = {1,2,3,4,5};
int *p = array;

当我想打印数组条目时:

这是一样的吗?为什么:

  • *(p++)
  • *p++

希望你能帮助我!

【问题讨论】:

标签: c pointers


【解决方案1】:

++ 比 * 具有更高的优先级(意味着它与 p 的绑定更紧密) 因此*p++ 等价于*(p++)

与此类似的是*p[](*p)[] 之间的区别。 []* 具有更高的优先级,因此 *p[] 相当于 *(p[]) 这使得 list a pointers 但像 (*p)[] 这样的东西明确表示要先在括号中做些什么,在这种情况下首先制作 pointer to a list (脑洞大开)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-19
    • 2023-03-27
    相关资源
    最近更新 更多