加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

读取指针声明

发布时间:2020-12-16 09:49:34 所属栏目:百科 来源:网络整理
导读:参见英文答案 What do parentheses in a C variable declaration mean?????????????????????????????????????5个 # include stdio.h# include stdlib.h int main(int argc,char *argv[]){ int daytab[2][13]; int (*daytab)[13]; int *px; return EXIT_SUCCE
参见英文答案 > What do parentheses in a C variable declaration mean?????????????????????????????????????5个

# include <stdio.h>
# include <stdlib.h>    
int main(int argc,char *argv[])
{
    int daytab[2][13];
    int (*daytab)[13];
    int *px;

    return EXIT_SUCCESS;
}

我正在研究指针并且难以阅读int(* daytab)[13]声明.
读取int * px,因为px是指向int的指针.

你怎么看int(* daytab)[13]?

解决方法

应用 spiral rule:是一种称为顺时针/螺旋规则的技术,它使任何C程序员能够在头脑中解析任何C声明!

有三个简单的步骤:

>从未知元素开始,以螺旋/顺时针方向移动;当遇到以下元素时,用相应的英语语句替换它们:

[X]或[]
=>数组X大小…或数组未定义大小…

(type1,type2)
=>函数传递type1和type2返回…
*
=>指针
>继续沿螺旋/顺时针方向进行此操作,直到所有标记都被覆盖.
>首先要在括号中解决任何问题!这将是有道理的;

+---------+              
     | +-----+ |     
     | ^     | |      ( daytab)        // daytab
int (*daytab)  [13];  (*daytab)        // daytab is a pointer
 ^   ^       | |      (*daytab)[13]    // daytab is a pointer to an array of 13
 |   |       | |      int(*daytab)[13] // daytab is a pointer to an array of 13 ints 
 |   +-------+ |            
 +-------------+

以下是question的一些答案.全部阅读.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读